Novak Djokovic overcame a battling Marin Cilic 6-4, 3-6, 6-3 to reach his sixth Cincinnati Masters final on Saturday while Roger Federer enjoyed a less-taxing route to the title match after his semifinal opponent David Goffin retired with a shoulder injury.
Federer had taken the first set 7-6 (3) before Goffin took a short break for treatment from his trainer.
It was 1-1 in the second when Goffin called it a night.
Federer, seven-for-seven in Cincinnati finals, will play in his 150th final when he meets Djokovic on Sunday. Djokovic has a 23-22 head-to-head edge but Federer has won all three of their Cincinnati final meetings.
Federer said he had not known for most of his semifinal that his Belgian opponent had been carrying an injury.
"I did realise he wasn't serving very big," the Swiss told ESPN.
"I wasn't sure if it was a tactic to get a higher first serve percentage."
Federer was happy with the short night's work after playing until after midnight in his quarter-final against Stan Wawrinka.
"I got to bed at 3.30 in the morning," he said. "I'm tired. I'm going to recover for tomorrow and hopefully be in better shape.
Federer said there was a lot on the line in the final.
"This is a big match. I think we're all a bit mentally and maybe physically tired but I'm looking forward to this final. There's also a lot at stake for me. I'm going for my 99th title."
Earlier, Djokovic, who has lost all five of his previous Cincinnati finals, was not at his best in a match that stretched for two hours and 32 minutes against Cilic.
The Serb came through on the big points.
"It's been a roller coaster week with matches, interruptions, and rain delays and everything," Djokovic said.
"I managed to win the last three matches in the third set. Very few points decided a winner and I just managed to pull through."
After dropping the second set, Djokovic broke to go 3-1 up in the decider before complaining to the chair umpire about music that was audible from outside centre court.
It seemed to break Djokovic's concentration as he immediately went down 0-40 on serve before digging his way back to deuce, only to lose the game with a weak second serve into the net.
However, Djokovic broke back in the eighth game before serving out clinically to secure victory.
Halep in title round
World number one Simona Halep reached her second final in as many weeks on Saturday with a 6-3, 6-4 victory over Aryna Sabalenka.
On Sunday she'll face the Netherlands' Kiki Bertens, who toppled eighth-seeded Czech Petra Kvitova 3-6, 6-4, 6-2.