I have been with classical broadcom for around 10 years, and I can tell you jobs are moving to India for sure. There are some teams in China but I see those shrinks like here in US, they are mostly there to serve local customers (sustaining) and don't really own core development. In last couple of years, I have seen PM, core hardware design, core software, QA (basically whole project) all moved to India though and the development teams grow to 2~3 times larger than US team and now own most promising projects.
I would not care if Indian teams are doing a better job there and being effective, if they can do same job at a lower cost, no complains here. But that's not what I heard from people around me (including GM, mid-low level managers), I feel it's mostly driven by political reasons other than what's good for company.
The mid/exec level managers in classical broadcom (especially those came from India) relentless and shamelessly push for outsourcing to India even though the team there are not experienced and often deliver sub-par quality work. My only conclusion is they are trying to benefit their own positions in company (more Indians more secure for themselves) and this must be just an Indian culture to hire their own people whenever possible. An Indian face will certainly score you 50% higher when you are interviewing with some manager with India origin. Sometimes I hope I can tan my skin to improve my chance.
Given more Indian managers are moving up the corp ladder (some of them are decent guys), I would expect this wave to continue. Most IT companies (especially those in shrinking industry like semi) will be dominant-ted by Indian engineers either here or back in India..
For China, I think the real threat is the local companies that grow large enough to compete with US globally. Whoever fittest will survive, that's just how capitalism works though.