Denis Shapovalov is off to the semifinals at the Masters 1000 event in Rome. On Saturday he defeated Grigori Dimitrov and notched his 100th tour-level win.

He beat the Bulgarian No. 15 seed in three sets of 6-2, 3-6, 6-2.

RELATED: Team Canada Tokyo 2020 tennis hopefuls in action at the US Open

The Canadian got off to strong start, capitalizing on his opponent’s errors and breaking him early in the opening set. Dictating the majority of rallies, he took the match lead in only 33 minutes. Shapovalov experienced some difficulties in the second set, committing three double faults. Bouncing back strong, Shapovalov picked up a quick lead in the third set. breaking Dimitrov at the end of the set to take the match in one hour, 53 minutes.

RELATED: US Open Updates: Shapovalov advances to quarterfinals

Inching his way closer to the ATP Top 10, this is Shapovalov’s first win over Dimitrov. In their two previous meetings, the Canadian lost to the former world No. 3.

The semifinals will be held on Sunday, where Shapovalov will face No. 8 seed Diego Schwartzman. The 21-year-old No. 12 seed is looking to reach the final of a Masters 1000 tournament for the second time in his career.