Basel - Juan Martin del Potro struggled to dominate Roberto Bautista Agut on his way to a 6-2, 2-6, 6-4 win at the Swiss Indoors on Friday as the giant Argentine reached his third successive tour semi-final.
Del Potro, the fourth seed, is fighting for a place in the eight-man ATP Finals in London in just over a fortnight.
He came to Switzerland with a Stockholm title from last week and a Shanghai semi-final boosting his chances.
A third Basel title at the weekend at an event where Roger Federer is looking for his eighth home trophy would send the 29-year-old Del Potro into the eighth and final position for the London showpiece.
He was a distant 47th in the race in late August and his efforts appeared to take their toll on Friday as he suffered a back niggle which required a visit from the trainer.
"I survived, I'm still standing," Del Potro joked. "I've been playing a lot of matches.
"I've had some problems in my body because I've been playing so many matches in a row.
"But I'm not putting my body at risk if I play tomorrow or next week (Paris Bercy). I speak a lot about fitness with my team. There is no risk to keep on playing."
"I will be ready for Saturday, it will be a challenge for me, I'm glad to reach the semi-finals of this event again."
Del Porto, now 17-3 since the start of the US Open, won the first set on Friday but found himself facing a challenge in the second as Spain's Bautista Agut, seeded sixth, broke twice to square the match.
In the deciding third, the Argentine, who beat Federer in the 2012 and 2013 Basel finals, traded service breaks with the Spaniard before winning the seven-minute penultimate game with a break for 5-4.
Del Potro served out the match to move into a semi-final against second-seeded defending champion Marin Cilic, who beat Marton Fucsovics 7-6 (7/3), 5-7, 7-6 (7/4).
Federer was aiming for the final four later on Friday against France's seventh seed Adrian Mannarino, against whom he has never lost a set in four matches.
Results from the ATP Swiss Indoors tournament in Basel on Friday (x denotes seeding):
Roger Federer (SUI x1) bt Adrian Mannarino (FRA x7) 4-6, 6-1, 6-3
Juan Martin Del Potro (ARG x4) bt Roberto Bautista Agut (ESP x6) 6-2, 2-6, 6-4
Marin Cilic (CRO x2) bt Marton Fucsovics (HUN) 7-6 (7/3), 5-7, 7-6 (7/4)