summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang/slang_compile.c
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2009-02-06 09:57:28 -0700
committerBrian Paul <brianp@vmware.com>2009-02-06 09:57:28 -0700
commitb2e779988eeb595187933fe2122d86f8ccfe059c (patch)
tree45ebb6b079b4f7b651f6c14b3f928697981a4218 /src/mesa/shader/slang/slang_compile.c
parentda795ff0a837eeb8c8f9d44987b374da2d4d2835 (diff)
mesa: meaningless whitespace change to see if git's working (ignore)
Diffstat (limited to 'src/mesa/shader/slang/slang_compile.c')
-rw-r--r--src/mesa/shader/slang/slang_compile.c18
1 files changed, 15 insertions, 3 deletions
diff --git a/src/mesa/shader/slang/slang_compile.c b/src/mesa/shader/slang/slang_compile.c
index 40460e0c7e..0c7881dd19 100644
--- a/src/mesa/shader/slang/slang_compile.c
+++ b/src/mesa/shader/slang/slang_compile.c
@@ -32,6 +32,7 @@
#include "main/context.h"
#include "shader/program.h"
#include "shader/programopt.h"
+#include "shader/prog_optimize.h"
#include "shader/prog_print.h"
#include "shader/prog_parameter.h"
#include "shader/grammar/grammar_mesa.h"
@@ -2794,11 +2795,22 @@ _slang_compile(GLcontext *ctx, struct gl_shader *shader)
_mesa_print_program(shader->Program);
#endif
+ if (success) {
+ if ((ctx->Shader.Flags & GLSL_NO_OPT) == 0) {
+ if ((ctx->Shader.Flags & GLSL_OPT) || shader->Pragmas.Optimize) {
+ /* apply program optimizations */
+ _mesa_remove_extra_moves(shader->Program);
+ _mesa_remove_dead_code(shader->Program);
+ _mesa_consolidate_registers(shader->Program);
+ }
+ }
+ }
+
shader->CompileStatus = success;
-#if 0
- _mesa_write_shader_to_file(shader);
-#endif
+ if (ctx->Shader.Flags & GLSL_LOG) {
+ _mesa_write_shader_to_file(shader);
+ }
return success;
}