David Goffin will face Alexandr Dolgopolov in the Shenzhen Open final after surviving a second-set scare to progress at the expense of Henri Laaksonen.
The Belgian had to work hard for his third final of the season against the world number 107, eventually prevailing 7-6 (9-7) 5-7 6-3.
"I'm feeling a little tired; I've never played him before, but he's a tough fighter," said second seed Goffin.
"It was a tough battle, especially in the second set. I'm happy with the way I started the third set, but it was a fight until the end.
"I've won three matches already in Shenzhen; I'm going to rest tonight to be ready for tomorrow."
Dolgopolov, meanwhile, saw off Damir Dzumhur - who knocked out top seed Alexander Zverev in the previous round - 6-3 6-4.
In Chengdu, Marcos Baghdatis has a chance to win his first ATP World Tour title since 2010 after coming from behind to beat Guido Pella 5-7 6-4 6-2.
Baghdatis had earlier played the final game of his quarter-final against Lu Yen-hsun after rain forced the match to be suspended on Friday.
Denis Istomin awaits in the final following a 6-2 6-7 (4-7) 6-0 victory over fifth seed Yuichi Sugita.