Mesa (glsl-to-tgsi): glsl_to_tgsi: execute merge_registers() after eliminate_dead_code()
Bryan Cain
bryanc at kemper.freedesktop.org
Wed Jun 22 18:30:56 UTC 2011
Module: Mesa
Branch: glsl-to-tgsi
Commit: fd29c7207fff1965225657eaed4f5f0ee1f1f4f5
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fd29c7207fff1965225657eaed4f5f0ee1f1f4f5
Author: Emil Velikov <emil.l.velikov at gmail.com>
Date: Tue Jun 21 21:52:19 2011 +0100
glsl_to_tgsi: execute merge_registers() after eliminate_dead_code()
Fixes a regression unintentionally introduced by commit 343e75d9 ("st/mesa: fix shaders with indirect addressing of temps") that caused missing leaves in 3dmark01 test 4 (Nature) and missing/displaced textures on human models in Counter-Strike: Source.
[Bryan: This regression also caused a performance regression in many shaders since it made the dead code elimination pass ineffective.]
Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
Signed-off-by: Bryan Cain <bryancain3 at gmail.com>
---
src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
index 322bfbb..abeb44a 100644
--- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
+++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
@@ -4274,8 +4274,8 @@ get_mesa_program(struct gl_context *ctx,
*/
if (!v->indirect_addr_temps) {
v->copy_propagate();
- v->merge_registers();
v->eliminate_dead_code();
+ v->merge_registers();
v->renumber_registers();
}
More information about the mesa-commit
mailing list