From c6cfd75083a55254fb1d26ab879736e82d29d3af Mon Sep 17 00:00:00 2001 From: Michael Beck Date: Thu, 30 Jun 2005 08:15:06 +0000 Subject: [PATCH] used get_irn_n(*, -1) instead of get_nodes_block() to access the block of potential floating nodes. check first if a nodes is floating before checking it's block [r6137] --- ir/ir/irdump.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/ir/ir/irdump.c b/ir/ir/irdump.c index 8714cdb8a..d82e4f69e 100644 --- a/ir/ir/irdump.c +++ b/ir/ir/irdump.c @@ -961,7 +961,11 @@ dump_ir_block_edge(FILE *F, ir_node *n) { static void print_data_edge_vcgattr(FILE *F, ir_node *from, int to) { - if (get_nodes_block(from) == get_nodes_block(get_irn_n(from, to))) + /* + * do not use get_nodes_block() here, will fail + * if the irg is not pinned. + */ + if (get_irn_n(from, -1) == get_irn_n(get_irn_n(from, to), -1)) fprintf (F, INTRA_DATA_EDGE_ATTR); else fprintf (F, INTER_DATA_EDGE_ATTR); @@ -969,7 +973,11 @@ print_data_edge_vcgattr(FILE *F, ir_node *from, int to) { static void print_mem_edge_vcgattr(FILE *F, ir_node *from, int to) { - if (get_nodes_block(from) == get_nodes_block(get_irn_n(from, to))) + /* + * do not use get_nodes_block() here, will fail + * if the irg is not pinned. + */ + if (get_irn_n(from, -1) == get_irn_n(get_irn_n(from, to), -1)) fprintf (F, INTRA_MEM_EDGE_ATTR); else fprintf (F, INTER_MEM_EDGE_ATTR); @@ -1234,7 +1242,7 @@ dump_block_graph(FILE *F, ir_graph *irg) { } else { /* Nodes that are not in a Block. */ dump_node(F, node); - if (is_Bad(get_nodes_block(node)) && !node_floats(node)) { + if (!node_floats(node) && is_Bad(get_nodes_block(node))) { dump_const_block_local(F, node); } dump_ir_data_edges(F, node); -- 2.20.1