Grigor Dimitrov cruised into the semi-finals of the Stockholm Open to further improve his chances of securing a place at the ATP World Tour Finals.

The Bulgarian eased beyond Mischa Zverev 6-3 6-4 to set up a last-four meeting with Fabio Fognini, who staved off two match points in fighting back to overcome Jack Sock 6-7 (3-7) 7-6 (7-2) 7-5.

Top seed Dimitrov, at 5-3 up in the second set, saw five match points come and go on Zverev's serve but he made no mistake in the next game as he looks to repeat his 2013 triumph at this tournament.

"I'm very happy with it," Dimitrov said. "It's nice to get through that match in straight sets. I knew it was not going to be easy but at the same time I thought I kept a very good intensity throughout the whole match."

US Open finalist Kevin Anderson is another man hoping to reach the end-of-season showpiece in London, but his hopes suffered a blow as he lost out to Fernando Verdasco 7-6 (7-1) 7-6 (7-1).

The Spaniard will take on defending champion Juan Martin del Potro in Saturday's other semi-final after the Argentinian edged out Yuichi Sugita 6-2 7-6 (8-6).

Like Dimitrov and Anderson, David Goffin is chasing a Finals berth but the top seed at the European Open suffered a shock exit in his quarter-final against teenage qualifier Stefanos Tsitsipas.

The Greek had defeated Pablo Cuevas and Ivo Karlovic in his opening rounds, but it looked as though his run would come to an end as Goffin took the first set.

Tsitsipas remained unbowed, however, taking the next two sets on tie-breaks to advance 2-6 7-6 (7-1) 7-6 (7-4) - his first top-10 win setting up a maiden ATP semi-final, against Diego Schwartzman, who ousted David Ferrer 7-5 6-2.

The other semi sees second seed Jo-Wilfried Tsonga take on Ruben Bemelmans after their respective victories over Julien Benneteau and Joao Sousa.

Meanwhile, at the Kremlin Cup, Damir Dzumhur, Adrian Mannarino, Mirza Basic and Ricardas Berankis advanced to the semi-finals.

Third-seed Mannarino will face Berankis while Dzumhur (6) takes on world number 209 Basic.