Hi, Patches 1-10 are random improvements.
Patches 11-14 are cleanups. Patches 15-20 add support for optimized shader variants compiled asynchronously (without stalling rendering). The following optimizations are implemented for the shader variants: - If user clipping is disabled, clip distances and the gl_ClipVertex code is removed from vertex shaders. - All VS outputs not read by a PS are removed. All VS code that computes those including vertex attribute loads is removed automatically by dead-code elimination. - If GL_RASTERIZER_DISCARD is set, all varyings are removed from vertex shaders. - If doing depth-only rendering, it has the same behavior for vertex shaders as GL_RASTERIZER_DISCARD. It's all about optimizing vertex shaders and VS output resources. I've just realized I might have to limit the compilation of optimized shader variants to only a limited number of threads, so that apps aren't slowed down by this. I hope this is just the beginning of many things we can do with asynchronous compilation. Please review. Marek _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev