The world number eight had made his return to action at the competition a day earlier with victory over Nicolas Almagro but was far from his best to bow out 6-3 6-2 in the last 16 at the ATP 1000 clay-court tournament.
Qualifier Giraldo stormed into a 3-0 first-set lead and survived a mini-fightback to move ahead before he broke in the third game of the second and won four of the remaining five games to record his first top-10 scalp.
It leaves only four seeds in the quarter-finals after Rafael Nadal set up a last-eight clash with Tomas Berdych.
Nadal was comfortable early in his 6-1 6-4 win over Jarkko Nieminen but was required to prove his mettle in the second set as the Finn threatened a comeback.
The Spanish clay-court expert and world number one was reeled in from 3-0 ahead before gaining the crucial third break of the set to secure a meeting with sixth seed Berdych.
After the withdrawals of Roger Federer and Novak Djokovic, coupled with the elimination of Stanislas Wawrinka, only David Ferrer and Nadal are seeded higher than Berdych.
The 2012 runner-up came from a set down to see off Grigor Dimitrov 3-6 6-3 6-2 and beat the Bulgarian for the first time at the third attempt.
"I will need to run a lot," said Berdych of his forthcoming meeting with Nadal.
"He's playing really well and is just showing how great he is on clay."
Spanish fifth seed David Ferrer accounted for American ninth seed John Isner 6-4 6-4 in one hour and 17 minutes.
World number 12 Kei Nishikori came through two tie-breaks to make the last eight, seeing off Canada's Milos Raonic 7-6 (7-5) 7-6 (7-5) after being 5-2 down in the first set, while Feliciano Lopez advanced thanks to Dominic Thiem's withdrawal.
Thiem saw off Wawrinka in the previous round but was forced to curtail his campaign due to illness.
Latvian Ernests Gulbis saw off Croatian Marin Cilic 6-3 6-4 to book a meeting with Ferrer after Poland's lucky loser Lukasz Kubot had seen his campaign ended by Roberto Bautista Agut courtesy of a 6-4 6-2 result.