More debug support
authorMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Wed, 24 Mar 2004 13:46:17 +0000 (13:46 +0000)
committerMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Wed, 24 Mar 2004 13:46:17 +0000 (13:46 +0000)
[r2556]

ir/ir/irvrfy.c

index ac9c09d..e95db3f 100644 (file)
@@ -87,6 +87,24 @@ static void show_proj_failure(ir_node *n)
       get_irn_opname(op), get_irn_modename(op));
 }
 
+/**
+ * Prints a failure message for a proj
+ */
+static void show_proj_failure_ent(ir_node *n, entity *ent)
+{
+  ir_node *op  = get_Proj_pred(n);
+  int proj     = get_Proj_proj(n);
+  ir_mode *m   = get_type_mode(get_entity_type(ent));
+
+  fprintf(stderr, "\nFIRM: irn_vrfy_irg() of node %ld %s%s %d(%s%s) entity %s(type %s mode %s)failed\n" ,
+      get_irn_node_nr(n),
+      get_irn_opname(n), get_irn_modename(n), proj,
+      get_irn_opname(op), get_irn_modename(op),
+      get_entity_name(ent), get_type_name(get_entity_type(ent)),
+      m ? get_mode_name(m) : "<no mode>");
+}
+
+
 /**
  * Show a node and a graph
  */
@@ -278,8 +296,8 @@ vrfy_Proj_proj(ir_node *p, ir_graph *irg) {
        if (ent) {
          ASSERT_AND_RET_DBG(
            (mode == get_type_mode(get_entity_type(ent))),
-           "wrong data Proj from Load", 0,
-           show_proj_failure(p);
+           "wrong data Proj from Load, entity type_mode failed", 0,
+           show_proj_failure_ent(p, ent);
          );
        }
        else {