The R600 LLVM back-end that's needed for OpenCL Gallium3D support, an optional OpenGL shader compiler back-end, and Radeon HD 7000 series support with "RadeonSI", now has some basic scheduling support.
This initial code tries to expose more parallelism for ALU instructions and reducing clase switching by grouping instructions of the same kind together. The code has gone through a few revisions with the work being done by Tom Stellard and Vincent Lejeune.
More details within the commit. The R600 LLVM back-end will be officially introduced in the LLVM 3.3 release due out within a few months.