Mesa (glsl2): glsl2: Add some easy-to-enable debug printfs to ir_dead_code. cpp.
Eric Anholt
anholt at kemper.freedesktop.org
Thu Aug 5 19:59:54 UTC 2010
Module: Mesa
Branch: glsl2
Commit: 3bd7e70bf7c4a9a52b425284c9f23689f00de93c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3bd7e70bf7c4a9a52b425284c9f23689f00de93c
Author: Eric Anholt <eric at anholt.net>
Date: Thu Aug 5 12:07:23 2010 -0700
glsl2: Add some easy-to-enable debug printfs to ir_dead_code.cpp.
---
src/glsl/ir_dead_code.cpp | 19 +++++++++++++++++++
1 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/src/glsl/ir_dead_code.cpp b/src/glsl/ir_dead_code.cpp
index bf032f1..a8d264f 100644
--- a/src/glsl/ir_dead_code.cpp
+++ b/src/glsl/ir_dead_code.cpp
@@ -32,6 +32,8 @@
#include "ir_variable_refcount.h"
#include "glsl_types.h"
+static bool debug = false;
+
/**
* Do a dead code pass over instructions and everything that instructions
* references.
@@ -60,6 +62,13 @@ do_dead_code(exec_list *instructions)
*/
assert(entry->referenced_count >= entry->assigned_count);
+ if (debug) {
+ printf("%s@%p: %d refs, %d assigns, %sdeclared in our scope\n",
+ entry->var->name, entry->var,
+ entry->referenced_count, entry->assigned_count,
+ entry->declaration ? "" : "not ");
+ }
+
if ((entry->referenced_count > entry->assigned_count)
|| !entry->declaration)
continue;
@@ -72,6 +81,11 @@ do_dead_code(exec_list *instructions)
entry->var->mode != ir_var_inout) {
entry->assign->remove();
progress = true;
+
+ if (debug) {
+ printf("Removed assignment to %s@%p\n",
+ entry->var->name, entry->var);
+ }
}
} else {
/* If there are no assignments or references to the variable left,
@@ -79,6 +93,11 @@ do_dead_code(exec_list *instructions)
*/
entry->var->remove();
progress = true;
+
+ if (debug) {
+ printf("Removed declaration of %s@%p\n",
+ entry->var->name, entry->var);
+ }
}
}
talloc_free(v.mem_ctx);
More information about the mesa-commit
mailing list