Roger Federer's hopes of winning a second French Open title are over for another year after he was beaten 6-4 6-3 7-6 (7-4) by Swiss compatriot Stan Wawrinka.
Federer was bidding to reach his first semi-final at Roland Garros since 2012 but a superb Wawrinka performance ensured it was the world number nine who went through. He will now face France's Jo-Wilfried Tsonga, who saw off Kei Nishikori 6-1 6-4 4-6 3-6 6-3.
Wawrinka hit 43 winners during a dominant display, which also saw Federer fail to break an opponent's serve for the first time in 291 Grand Slam matches, a record that stretches back to the 2002 US Open.
The 17-time Grand Slam champion came close to clawing back the third set but he struggled to keep pace with Wawrinka, whose performance he admitted was "red-hot".
"I don't think this is a first for anybody who has seen Stan play this way," Federer said.
"We know he can do this. It's just nice for him now, even talking for him, to string it together on a big occasion like this at the French where I always thought he'd have his best chance to do well.
"The Australian Open (where Wawrinka won the tournament in 2014) was a surprise for many, but the French people always thought this is where he would get closer to winning.
"For him it's obviously great to be in the semi-finals now. I thought he played really good tennis."
It is only the second time in 16 meetings that Wawrinka has beaten Federer.
"I'm really, really happy and really satisfied with the way I played," Wawrinka said.
Meanwhile, Ana Ivanovic and Lucie Safarova will meet in the French Open semi-finals after both players came through their last-eight matches in straight sets yesterday.
Ivanovic beat Ukraine's Elina Svitolina 6-3 6-2 while Safarova, who knocked out Maria Sharapova in the previous round, defeated Spain's Garbine Muguruza 7-6 (7-3) 6-3.