Well I guess that depends on what you consider contributions. Amd contributes more back to GCC then intel (which is one of the reasons why GCC does a good job on AMD processors where intel favors it's own compilers) , intel seems to contribute back to X (almost to ruling it with an iron fist), AMD sponsors some distro's with build servers, mirror servers and such. AMD and Nvidia have contributed back to openCL, intel hasn't done alot in that area. I don't think you can draw a clear cut, who gives more as contributions come in many shapes and forms.
Lets not forget that by supporting the 10,000 ton gorilla instead of the smaller guy that needs that financial aid isn't going to help out their ability to contribute back either.