Module: Mesa
Branch: glsl2
Commit: 28faa12dc2413d93c7f4778327a5e7c4c8f57c85
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=28faa12dc2413d93c7f4778327a5e7c4c8f57c85

Author: Eric Anholt <[email protected]>
Date:   Fri Jul  2 11:37:39 2010 -0700

ir_to_mesa: Don't forget to run the Mesa IR optimization passes.

With how we generate assignments, the trivial copy propagation in it
is really important, and some drivers will really want the register
allocation, too.

---

 src/mesa/shader/ir_to_mesa.cpp |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/src/mesa/shader/ir_to_mesa.cpp b/src/mesa/shader/ir_to_mesa.cpp
index d5664e7..11fb7b9 100644
--- a/src/mesa/shader/ir_to_mesa.cpp
+++ b/src/mesa/shader/ir_to_mesa.cpp
@@ -44,6 +44,7 @@
 extern "C" {
 #include "main/mtypes.h"
 #include "shader/prog_instruction.h"
+#include "shader/prog_optimize.h"
 #include "shader/prog_print.h"
 #include "shader/program.h"
 #include "shader/prog_uniform.h"
@@ -1675,6 +1676,10 @@ get_mesa_program(GLcontext *ctx, void *mem_ctx, struct 
gl_shader *shader)
 
    _mesa_reference_program(ctx, &shader->Program, prog);
 
+   if ((ctx->Shader.Flags & GLSL_NO_OPT) == 0) {
+      _mesa_optimize_program(ctx, prog);
+   }
+
    return prog;
 }
 

_______________________________________________
mesa-commit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to