Ugh. I absolutely hate this argument. The idea that companies should owe allegiance to a country is absolutely idiotic. Why should a company owe allegiance to any nation or nationality? Are Americans really that self-centered that they only care about themselves and their own country?
Essentially, the argument is 'It's better an American has a job than a Chinese, because Americans deserve a job more than a Chinese' Which is either racist, xenophobic, or really, just petty selfishness. If it's selfishness, at least call it that and be done with it.