Microsoft, Hewlett-Packard 'used offshore units' to avoid billions of dollars in US taxes