Originally posted by haplo602
View Post
The real reason to not use LLVM on r600 hardware is simply that the existing backend is already fairly well tested and working, and rewriting it all in llvm is likely to be a long, frustrating task. No one seems to be quite sure exactly how well llvm could optimize for a VLIW architecture like r600 hardware uses, either, so there is no real compelling reason to even try right now other than getting compute running (on older, slower hardware where it's less interesting for most anyway). I'm sure someone could make an interesting doctorate project out of it.
GCN hardware is a little more similar to the other hardware LLVM is used on, and the hardware also runs much more complex programs, which is why it was decided that a full-blown compiler stack like LLVM would be better suited there.
Comment