Lines Matching refs:nodes

271 	 if (df_find_use (df, g->nodes[i].insn, rd->reg))
304 if (df_find_def (df, g->nodes[i].insn, use->reg))
347 /* Given two nodes, analyze their RTL insns and add inter-loop mem deps
372 /* Perform intra-block Data Dependency analysis and connect the nodes in
394 ddg_node_ptr dest_node = &g->nodes[i];
419 ddg_node_ptr j_node = &g->nodes[j];
472 /* Allocate the nodes array, and initialize the nodes. */
474 g->nodes = (ddg_node_ptr) xcalloc (num_nodes, sizeof (struct ddg_node));
491 g->closing_branch = &g->nodes[i];
500 g->nodes[i].cuid = i;
501 g->nodes[i].successors = sbitmap_alloc (num_nodes);
502 sbitmap_zero (g->nodes[i].successors);
503 g->nodes[i].predecessors = sbitmap_alloc (num_nodes);
504 sbitmap_zero (g->nodes[i].predecessors);
505 g->nodes[i].first_note = (first_note ? first_note : insn);
506 g->nodes[i++].insn = insn;
531 ddg_edge_ptr e = g->nodes[i].out;
540 sbitmap_free (g->nodes[i].successors);
541 sbitmap_free (g->nodes[i].predecessors);
545 free (g->nodes);
569 /* Print the DDG nodes with there in/out edges to the dump file. */
579 print_rtl_single (file, g->nodes[i].insn);
581 for (e = g->nodes[i].out; e; e = e->next_out)
585 for (e = g->nodes[i].in; e; e = e->next_in)
602 int src_uid = INSN_UID (g->nodes[src_cuid].insn);
605 print_rtl_single (file, g->nodes[src_cuid].insn);
607 for (e = g->nodes[src_cuid].out; e; e = e->next_out)
644 /* Add the given edge to the in/out linked lists of the DDG nodes. */
682 length = longest_simple_path (g, src->cuid, dest->cuid, scc->nodes);
694 /* Create a new SCC given the set of its nodes. Compute its recurrence_length
697 create_scc (ddg_ptr g, sbitmap nodes)
706 scc->nodes = sbitmap_alloc (g->num_nodes);
707 sbitmap_copy (scc->nodes, nodes);
710 EXECUTE_IF_SET_IN_SBITMAP (nodes, 0, u, sbi)
713 ddg_node_ptr n = &g->nodes[u];
716 if (TEST_BIT (nodes, e->dest->cuid))
735 sbitmap_free (scc->nodes);
780 if (insn == g->nodes[i].insn)
781 return &g->nodes[i];
785 /* Given a set OPS of nodes in the DDG, find the set of their successors
796 const sbitmap node_succ = NODE_SUCCESSORS (&g->nodes[i]);
804 /* Given a set OPS of nodes in the DDG, find the set of their predecessors
815 const sbitmap node_preds = NODE_PREDECESSORS (&g->nodes[i]);
906 /* Given FROM - a bitmap of source nodes - and TO - a bitmap of destination
907 nodes - find all nodes that lie on paths from FROM to TO (not excluding
908 nodes from FROM and TO). Return nonzero if nodes exist. */
935 ddg_node_ptr u_node = &g->nodes[u];
964 ddg_node_ptr u_node = &g->nodes[u];
995 update_dist_to_successors (ddg_node_ptr u_node, sbitmap nodes, sbitmap tmp)
1005 if (TEST_BIT (nodes, v)
1021 longest_simple_path (struct ddg * g, int src, int dest, sbitmap nodes)
1035 g->nodes[i].aux.count = -1;
1036 g->nodes[src].aux.count = 0;
1050 ddg_node_ptr u_node = &g->nodes[u];
1052 change |= update_dist_to_successors (u_node, nodes, tmp);
1055 result = g->nodes[dest].aux.count;