Ross Ridge wrote:
Mark Mitchell writes:
That's correct. I was envisioning a proper compiler that would take
OpenCL input and generate binary output, for a particular target, just
as with all other GCC input languages. That target might be a GPU, or
it might be a multi-core CPU, or it might be a single-core CPU.
I have a hard time seeing why this would be all that worthwhile.
Since the instruction sets for AMD, NVIDIA or current Intel GPUs are
trade scretes, GCC won't be able to generate binary output for them.
It seems to me that some specifications seems to be available. I am not
a GPU expert, but
http://developer.amd.com/documentation/guides/Pages/default.aspx
contains a R8xx Family Instruction Set Archictectire document at
http://developer.amd.com/gpu_assets/r600isa.pdf and at a very quick
first glance (perhaps wrongly) I feel that it could be enough to design
& write a code generator for it.
But I may be wrong.
I still hope that some GPU specifications would become open.
Of course, if not enough specifications are available, I cannot imagine
how GCC could compile kernel OpenCL functions.
(even the future GCC plugins are expected to make proprietary extensions
legally impossible, or at least difficult).
Regards.
--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mines, sont seulement les miennes} ***
membre de l'APRIL "promouvoir et défendre le logiciel libre"
Rejoignez maitenant plus de 4000 adhérents http://www.april.org