Wielding a staff you Lose 2 attacks, and Bonus damage from 2handed.
Halfling vs Fire Giant, I think you can figure this one out alone.
IMHO a halfling must use a staff in this situation. Bash damage is easily offset when setup right - a fg warrior should never win on an attempted bash lock vs a halfling provided you are correctly setup for the fight. The catch is if you are not probably setup you will have a VERY hard time vs the fire giant.
TBH, I would say 100% of the time (on a warrior/ranger) a staff is superior to shield/weapon (even shield/whip vs a zerk). The reason isn't in the attacks you do or do not get - its in what you give up to use a shield.
My latest lvl 50 was a warrior (non-giant) so I ended up finding creative ways of exploting people even when lag locks were employed against me. The biggest downside of a non-giant warrior (I found) was that giants would atttempt lag lock and run away when it didn't work. I had to be VERY fast to get on them - and I don't always possess that speed. Correct eq setup certainly even allowed me to overcome (mostly) hit/dam bonuses ogres and giants had.
L-A
