draw: fix draw_llvm_variant_key struct padding to avoid recompiles
authorRoland Scheidegger <sroland@vmware.com>
Tue, 29 Jan 2013 16:39:09 +0000 (08:39 -0800)
committerRoland Scheidegger <sroland@vmware.com>
Tue, 29 Jan 2013 16:40:52 +0000 (08:40 -0800)
commit0eb588a37cc0427fd5c6a1ed2b212ed5d68f4dab
treeae53d37a9ae0ce46717757f4c7714548224c4c72
parent845130951f9f62a1baba9ae9ea2b234e83ac5c94
draw: fix draw_llvm_variant_key struct padding to avoid recompiles

The struct padding got broken by c789b981b244333cfc903bcd1e2fefc010500013.
This caused serious performance regression because part of the key was
uninitialized and hence the shader always recompiled (at least on release
builds...).
While here also fix key size calculation when the number of samplers
and the number of sampler views are different.

v2: add comment

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
src/gallium/auxiliary/draw/draw_llvm.c
src/gallium/auxiliary/draw/draw_llvm.h
src/gallium/auxiliary/draw/draw_vs_llvm.c