diff options
author | Eric Anholt <eric@anholt.net> | 2012-01-06 10:20:09 -0800 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2012-01-11 12:06:34 -0800 |
commit | 2c623c2be529edc974ca293f3c71929c639ec0c9 (patch) | |
tree | 4e3050156de1b4910c441cbb2d1775cbbc31c215 /src/glsl/linker.cpp | |
parent | f1b33c74dc11b97a86a7f0e9cbe4cb168b2b9540 (diff) | |
download | external_mesa3d-2c623c2be529edc974ca293f3c71929c639ec0c9.zip external_mesa3d-2c623c2be529edc974ca293f3c71929c639ec0c9.tar.gz external_mesa3d-2c623c2be529edc974ca293f3c71929c639ec0c9.tar.bz2 |
i965/vs: Try to emit more components of constant vectors at once.
We were naively emitting each component at a time, even if we were
emitting the same value to multiple channels. Improves on a codegen
regression from the old VS to the new VS on some unigine shaders
(because we emit constant vecs/matrices as immediates instead of
loading them as push constants, so we had over 4x the instructions for
using them).
shader-db results:
Total instructions: 58594 -> 58540
11/870 programs affected (1.3%)
765 -> 711 instructions in affected programs (7.1% reduction)
Diffstat (limited to 'src/glsl/linker.cpp')
0 files changed, 0 insertions, 0 deletions