Canada's Denis Shapovalov advanced to the Rogers Cup semifinals with a 2-6, 6-3, 6-4 victory over France's Adrian Mannarino on Friday night. The 36-year-old Swiss will next face unseeded Dutchman Robin Haase, a 4-6, 6-3, 6-3 victor over Diego Schwartzman of Argentina.
Bautista Agut struggled on his serve as he was broken three times and won just 65 % of his first serve points.
"I'm happy - most happy that I'm actually really healthy going into the finals", said second seed Federer, who has won Masters titles in Indian Wells and Miami in 2017.
For Federer, it was his 59nd ATP 1000 semi-final and a 16th consecutive win - his longest since 2012, when he was the world's top ranked player.
Australian Nick Kyrgios fell 6-4 6-3 to fourth seed Alexander Zverev as the German finally claimed victory over his opponent in their third meeting of the season. Shapovalov, who needed a wild card to gain entry into the tournament, takes on Frenchman Adrian Mannarino later in the day.
Shapovalov will next meet the victor of a match later Friday between fourth-seeded Alexander Zverev of Germany and Kevin Anderson of South Africa. Shapovalov also upset former US Open victor Juan Martin Del Potro in the second round.
The Swiss maestro, who recently clinched his 19th Grand Slam title at Wimbledon, eased past Bautista Agut 6-4, 6-4 in a one-sided quarter-final clash that lasted one hour and eight minutes. "When I broke him, I got that little bit of confidence, and I started believing in my shots again". The 30-year-old Haase, ranked 52nd in the world, improved to 5-0 against 36th-ranked Schwartzman in his career.
Federer said he knows Haase well from serving with him on the ATP player council and from practicing together. "I believe it's because I was more aggressive coming to the net".