Stanislas Wawrinka surrendered a 3-0 lead in the deciding set as his hopes of a third Geneva Open title were unexpectedly ended by qualifier Damir Dzumhur.
The second-seeded Swiss, who won the tournament in 2016 and 2017, was beaten 3-6 6-3 6-4 by the world number 57 from Bosnia in just under two hours.
Dzumhur, who also rallied from a set down to defeat Feliciano Lopez in the first round, will now play fifth seed Radu Albot in the quarter-finals.
The Moldovan saw off Argentina's Juan Ignacio Londero 6-1 6-7(3) 6-4 to reach the last eight.
Third and fourth seeds Cristian Garin and Marton Fucsovics are also out after losing to Taro Daniel and Federico Delbonis respectively.
At the Lyon Open, world number 18 and top seed Nikoloz Basilashvili saw off Frenchman Tristan Lamasine 7-5 7-5 while second seed Roberto Bautista Agut beat another home player, Corentin Moutet 4-6 6-4 6-3.
Third seed Denis Shapovalov came within two points of losing before fighting back to beat Ugo Humbert of France 2-6 7-6(3) 6-2.
The Canadian lost the first set and was 5-4 down in the second but rallied to snatch it on a tie-break and went on to win in two hours 16 minutes.
French veteran Jo-Wilfried Tsonga beat Steven Diez 3-6 7-6(2) 6-3 but Richard Gasquet withdrew from his match against American Taylor Fritz through injury.