Roger Federer will play Juan Martin del Potro in Sunday's Swiss Indoors Basel final after brushing aside David Goffin in his semi-final.
Federer was at his clinical best to see off Belgian third seed Goffin 6-1 6-2 in an hour and is on course to win his hometown tournament for a record-breaking eighth time.
"I'm ready for a difficult match and a fully-fit del Potro," Federer told the ATP's official website after a near-faultless performance.
"He played a great match against me in Shanghai and went on to win Stockholm.
"Now he's here in the final again. I think he's OK. He might be tired, but he doesn't have issues that would keep him away from the court."
Federer raced through the opening set and broke Goffin twice more in the second as his precision forced his opponent into a string of errors.
Del Potro, who could clinch the final qualifying spot at the year-ending ATP Finals in London if he wins a win on Sunday, beat defending champion Marin Cilic 6-4 6-4 in one hour, 37 minutes.
"I played a good match, but always to beat Cilic you must play at a high level," said Del Potro, who secured his seventh win in a row against world number four Cilic.
"I'm happy that I did well and reached another final here in Basel. I think I will be in good shape for (Sunday). I'm so excited to play the final."
Jo-Wilfried Tsonga beat Philipp Kohlschreiber 7-6 (7/4) 7-5 in the last four of the Erste Bank Open 500 in Vienna and will play Lucas Pouille in Sunday's all-French final.
Pouille hit back to win a hard-fought contest against Briton Kyle Edmund 6-7 (7/9) 6-4 6-3 in two hours and 17 minutes.