In OpenCL Push, AMD Makes Progress With LLVM For Gallium3D

Sunday began by Christian König making progress with H.264 VDPAU support in Gallium3D, which is one of AMD's top three priorities for their open-source Linux driver. Tom Stellard meanwhile has been working on one of the other priority projects: enabling OpenCL in the open-source driver.
In early December was the unveiling of the initial R600g LLVM back-end that converts TGSI (the common Gallium3D IR) to LLVM IR and provides a supportive LLVM back-end for the R600g driver (the Gallium3D driver supporting from the Radeon HD 2000 "R600" series through the Radeon HD 6900 "Cayman" series).
The LLVM back-end was derived from AMD's AMDIL LLVM back-end for OpenCL, which they decided to open-source last month. As Stellard said in the release announcement, "The main motivation for this LLVM backend is to help bring compute/OpenCL support to r600g by making it easier to support different compiler frontends."
The R600g LLVM back-end wasn't merged for the forthcoming Mesa 8.0 release, but based upon the activity that's been happening and OpenCL being a priority for AMD's open-source graphics team, this should be a feature of Mesa 8.1.
What's new for January is that Stellard has published patches for a new TGSI to LLVM interface to Gallium and makes the changes necessary so that Gallium3D can use the new interface. Tom Stellard has also updated his R600g LLVM shader back-end branch of Mesa so that it's current as of Sunday. The updated Mesa branch of his can be viewed via CGit.
The RFC patch-set for the new TGSI to LLVM conversion interface can be found on the Mesa mailing list, which makes OpenCL-Gallium3D for Radeon hardware being a tiny bit closer to reality.
9 Comments
