Caroline Wozniacki moved into her sixth final of the year by beating Sloane Stephens 6-2 6-3 in the Rogers Cup on Saturday.
Wozniacki has yet to win a title in 2017, but will once again have the chance to change that after building on her epic quarter-final win over world number one Karolina Pliskova.
The sixth seed was able to comfortably get the better of Stephens, who can take great heart from reaching the semis in only her third tournament of an injury-plagued campaign.
An early break put Wozniacki in control of the opening set and the Dane swiftly recovered from dropping serve at the start of the second.
Defending champion Simona Halep will face Elina Svitolina in Saturday's other semi-final, both players having come through delayed last-eight ties earlier in the day.
Having dropped only one game in her victory over Barbora Strycova, Halep was a convincing winner once again as she eased past Caroline Garcia 6-4 6-2.
Svitolina resumed her quarter-final with Garbine Muguruza trailing by a set, but turned things around superbly to beat the Wimbledon champion 4-6 6-4 6-3.
After beating Garcia, Halep said: "It's not going to be easy, at this level, to play two matches in the same day. But I think I'm ready, I feel strong enough in my legs.
"I'll be playing against a very good opponent. I just want to give my best, enjoy the match, and try to fight."