Kyle Edmund defeated top seed Jack Sock 6-4 6-1 to reach the last four of the 2017 Atlanta Open.
It is the second ATP Tour semi-final of the 22-year-old Briton's career and the fifth seed will face Ryan Harrison for a place in Sunday's final.
The world number 45 was a break down in the first set when play was interrupted to give a fan medical help, but hit back to win nine of the last 10 games.
Harrison thrashed Christopher Eubanks 6-1 6-2 in their quarter-final.
American fourth seed Harrison said: "Kyle's been coming out.