Belgium's David Goffin recovered from a back injury to secure a 3-2 victory over Davis Cup champions Switzerland.
Trailing 2-1 overnight, Swiss hopes were kept alive by Henri Laaksonen beating Steve Darcis in five sets.
But Goffin, who withdrew from Friday's singles, beat Adrien Bossel in straight sets to secure a quarter-final tie against Canada, who beat Japan 3-2.
Australia will play Kazakhstan in the last eight while France face Great Britain after beating Germany 3-2.
Argentina's Leonardo Mayer beat Brazil's Joao Souza 7-6 (7-4) 7-6 (7-5) 5-7 5-7 15-13 in a match that lasted six hours and 42 minutes, a Davis Cup record.
Mayer needed 11 match points to close out the match, which surpassed the previous Davis Cup record of six hours and 22 minutes for John McEnroe's 1982 win over Mats Wilander.
The victory levelled the tie at 2-2 and Argentina's Federico Delbonis was leading Thomaz Bellucci 6-3 when the contest was suspended for poor light in Buenos Aires.
The tie will be completed on Monday, with the winner playing Serbia, who beat Croatia 5-0.
World number one Novak Djokovic helped the Serbs reach the quarter-finals with a day to spare.
|Davis Cup winners|
Belgium seemed on course to win at the first attempt in the final-day singles in Liege when Darcis clinched the second and third sets to take control against Laaksonen.
But the 22-year-old Swiss hit back to win the fourth set on a tie-break before completing a 6-3 3-6 3-6 7-6 6-1 victory.
Injury had forced Goffin to withdraw from Friday's singles but he recovered in time to brush aside Bossel 6-4 6-0 6-4, hitting 15 aces along the way.
Switzerland were without Roger Federer and Stan Wawrinka, who both opted out of this year's event.
Australia secured their vital third point courtesy of Bernard Tomic as they beat Czech Republic 3-2, while Aleksandr Nedovyesov won Kazakhstan's decider against Italy.