Mesa (master): i965/cfg: Add function to generate a dot file of the dominator tree.

Matt Turner mattst88 at kemper.freedesktop.org
Wed Feb 18 04:44:56 UTC 2015


Module: Mesa
Branch: master
Commit: 662c645318849164526d1a79f86db9dcb6711ad9
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=662c645318849164526d1a79f86db9dcb6711ad9

Author: Matt Turner <mattst88 at gmail.com>
Date:   Wed Feb 26 16:15:52 2014 -0800

i965/cfg: Add function to generate a dot file of the dominator tree.

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/mesa/drivers/dri/i965/brw_cfg.cpp |   10 ++++++++++
 src/mesa/drivers/dri/i965/brw_cfg.h   |    1 +
 2 files changed, 11 insertions(+)

diff --git a/src/mesa/drivers/dri/i965/brw_cfg.cpp b/src/mesa/drivers/dri/i965/brw_cfg.cpp
index e094a88..7e7770e 100644
--- a/src/mesa/drivers/dri/i965/brw_cfg.cpp
+++ b/src/mesa/drivers/dri/i965/brw_cfg.cpp
@@ -509,3 +509,13 @@ cfg_t::dump_cfg()
    }
    printf("}\n");
 }
+
+void
+cfg_t::dump_domtree()
+{
+   printf("digraph DominanceTree {\n");
+   foreach_block(block, this) {
+      printf("\t%d -> %d\n", block->idom->num, block->num);
+   }
+   printf("}\n");
+}
diff --git a/src/mesa/drivers/dri/i965/brw_cfg.h b/src/mesa/drivers/dri/i965/brw_cfg.h
index 4d4eb2d..56d7d07 100644
--- a/src/mesa/drivers/dri/i965/brw_cfg.h
+++ b/src/mesa/drivers/dri/i965/brw_cfg.h
@@ -275,6 +275,7 @@ struct cfg_t {
 
    void dump(backend_visitor *v);
    void dump_cfg();
+   void dump_domtree();
 #endif
    void *mem_ctx;
 




More information about the mesa-commit mailing list