> This might depend on the target: R600+, for example, is quite > scalar-oriented anyway (modulo a lot of subtle limitations), so just > pretending that everything is scalar could work well there since > revectorizing is almost unnecessary.
Interesting, nv50 is also almost fully scalar, and based on the Gallium driver source, i965 seems to be scalar too. So it seems it would really make sense to also have a scalar IR, whether LLVM IR or something else. Of course, "scalar" is usually actually SoA SIMD, but that's mostly hidden, except for things like barriers, join points and nv50 "voting" instructions. ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mesa3d-dev