As we talked about back in April, there are five summer X/Mesa projects
as part of Google's Summer of Code. One of these projects is to improve the GLSL (GL Shading Language) compiler for the ATI R300 class graphics processors and while the summer has just begun, there is already some work emerging.
Tom Stellard is the student developer working on the R300 GLSL improvements, which should benefit many include with the ATI Gallium3D stack for this older hardware architecture. Tom wrote to the Mesa development list a few days back to the Mesa development list that he's published a branch of Mesa that now supports loop unrolling for R300 ASICs that don't natively support the unrolling of loops.
This code is still primitive in that it only supports unrolling loops with a constant number of iterations and the support is only enabled for fragment shaders, but vertex shaders should soon come. Brian Paul has looked at the code and is trying to get the work into Mesa's GLSL compiler rather than the R300-specific compiler, which more hardware/drivers could take advantage of if properly hooked up.
This compiler loop emulation discussion can be found in this thread
. Tom has also setup a blog where he is discussing this R300 GLSL GSoC work, including already a branch emulation post
. You can also be sure that we'll be monitoring his blog and the Mesa threads for any other interesting improvements this summer.