[LLVMdev] AMD IL Code Generator Backend for OpenCL

Villmow, Micah Micah.Villmow at amd.com
Mon Dec 12 10:09:16 CST 2011


I am proud to announce that AMD is Open Sourcing AMDIL Code Generator for LLVM 2.9.  While this version is not for uptake into LLVM mainline, it does build and is compatible with LLVM 2.9.
This is the first step of the process, so I know there will be issues that show up. In the next few months, we will be providing more unit tests and an LLVM 3.0 compatible version, and finally a TOT version for inclusion into the tree. I look forward to any constructive feedback and will as answer any questions that I can.


For information on the sections of an AMD OpenCL  binary, please refer here:
http://developer.amd.com/support/KnowledgeBase/Lists/KnowledgeBase/DispForm.aspx?ID=115

The attached zip file provides the code generator, a patch to LLVM 2.9 that adds the target triple, and a few tests. Again this version is not for submission into the tree, but for people to experiment, examine and provide feedback outside of AMD.

Here are a list of the major known issues:
LLVM-IR that isn't generated from AMD's OpenCL frontend does not produce any AMDIL.
Testing is sparse(I'm working on it)
No support for most OpenCL math functions. It is up to the library writers to map from OpenCL function calls to AMDIL intrinsic.
Minor post processing of AMDIL is required for AMDIL source to be accepted by calclCompile/clBuildProgramFromBinary.
The source is the documentation.
Only supports compute shader generation.
The output of the code generator is currently compatible with OpenCL 1.0/1.1 only when processing LLVM-IR from OpenCL binaries generated by AMD APP SDK 2.5 or later with the clBuildProgramSource options "-fbin-llvmir -fno-bin-amdil -fno-bin-exe".

Enjoy,
Micah Villmow
OpenCL GPU Compiler Engineer
AMD Inc.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.cs.uiuc.edu/pipermail/llvmdev/attachments/20111212/ad81010a/attachment-0001.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: AMDIL_code_generator.zip
Type: application/x-zip-compressed
Size: 486431 bytes
Desc: AMDIL_code_generator.zip
Url : http://lists.cs.uiuc.edu/pipermail/llvmdev/attachments/20111212/ad81010a/attachment-0001.bin 


More information about the LLVMdev mailing list