The idea behind HLSL was to reduce work, so far CG is not doing that...ohh wait a minute yes it is, for Nvidia cards. Optimizing for ATI cards would require more work, and since I ownly possess a Nforce 2 board and don't have a Nvidia card powering my PC, what CG is going to do for me is all I'm concerned about.
Ideally one HLSL/API should be enough, otherwise project lengths will grow as developers will be spending time on 4 different HLSL.
IMO this discussion should not even be happening, and as I stated one year ago what the true reason CG is here, and it is not to better the PC game industry..in fact it is segragating it.