Novak Djokovic's comeback from injury was cut short at the Monte Carlo Masters as Belgium's David Goffin earned the biggest win of his career.
World number two Djokovic, playing his second match following an elbow injury, lost 6-2 3-6 7-5 in the quarter-final.
Goffin, who will meet Rafael Nadal or Diego Schwartzman in the semis, had not previously beaten a top-three player.
Meanwhile, Britain's Andy Murray will play in Barcelona next week following his early exit in Monte Carlo.
Goffin, ranked 13th in the world, earned his first career win over Djokovic by taking his fifth match point in a dramatic 11-minute final game.