summaryrefslogtreecommitdiff
path: root/src/glsl/opt_copy_propagation_elements.cpp
AgeCommit message (Collapse)Author
2011-02-04glsl: Remove extra checks for constant true assignment conditions.Eric Anholt
These are already stripped by opt_constant_folding.cpp.
2011-02-04glsl: Add a new opt_copy_propagation variant that does it channel-wise.Eric Anholt
This patch cleans up many of the extra copies in GLSL IR introduced by i965's scalarizing passes. It doesn't result in a statistically significant performance difference on nexuiz high settings (n=3) or my demo (n=10), due to brw_fs.cpp's register coalescing covering most of those extra moves anyway. However, it does make the debug of wine's GLSL shaders much more tractable, and reduces instruction count of glsl-fs-convolution-2 from 376 to 288.