draw: improved handling of undefined inputs
authorRoland Scheidegger <sroland@vmware.com>
Fri, 14 Oct 2016 01:08:00 +0000 (03:08 +0200)
committerRoland Scheidegger <sroland@vmware.com>
Tue, 18 Oct 2016 23:44:59 +0000 (01:44 +0200)
commit0942fe548e935ccc849f44bd920649ef2b93a6a5
treed4324f0952f656558d6415c90fa8185c264c100e
parentd1b4a3451e03e09966fa9700584e38baece8d3cd
draw: improved handling of undefined inputs

Previous attempts to zero initialize all inputs were not really optimal
(though no performance impact was measurable). In fact this is not really
necessary, since we know the max number of inputs used.
Instead, just generate fetch for up to max inputs used by the shader,
directly replacing inputs for which there was no vertex element by zero.
This also cleans up key generation, which previously would have stored
some garbage for these elements.
And also drop the assertion which indicates such bogus usage by a
debug_printf (the whole point of initializing the undefined inputs was to
make this case safe to handle).

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