From e31266ed3e3667c043bc5ad1abd65cfdb0fa7fdb Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Tue, 25 Jan 2011 10:28:13 +1000 Subject: glsl: Add a new opt_copy_propagation variant that does it channel-wise. 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. --- src/glsl/Makefile | 1 + 1 file changed, 1 insertion(+) (limited to 'src/glsl/Makefile') diff --git a/src/glsl/Makefile b/src/glsl/Makefile index 4f307422c2..ec11c8a7bd 100644 --- a/src/glsl/Makefile +++ b/src/glsl/Makefile @@ -69,6 +69,7 @@ CXX_SOURCES = \ opt_constant_propagation.cpp \ opt_constant_variable.cpp \ opt_copy_propagation.cpp \ + opt_copy_propagation_elements.cpp \ opt_dead_code.cpp \ opt_dead_code_local.cpp \ opt_dead_functions.cpp \ -- cgit v1.2.3