11th seed John Isner will play Novak Djokovic in the semi-finals at Indian Wells after he overcame Gilles Simon in a gruelling three-set encounter.
After the surprise of being broken in the opening game, the American converted his fourth break-point of an epic 10-minute game six to restore parity before breaking again to take the first set 6-3.
Isner then produced a horrific 35 minutes of tennis, which was full of errors, and he was broken twice on his way to losing the second set 6-1.
The first 11 games of the final set went with serve, leaving Simon needing to hold to force a tie-break.
The Frenchman was unable to fend off a ferocious attack from the hard-hitting American, who broke to 15 to clinch the final set 7-5.
World number one Djokovic had dismissed Spaniard Nicolas Almagro in straight sets earlier in the day.