Go to the documentation of this file.
   26 #ifndef FIRM_IR_IREDGES_H 
   27 #define FIRM_IR_IREDGES_H 
   66 #define foreach_out_edge_kind(irn, edge, kind) \ 
   67     for (ir_edge_t const *edge = get_irn_out_edge_first_kind(irn, kind); edge; edge = get_irn_out_edge_next(irn, edge)) 
   77 #define foreach_out_edge_kind_safe(irn, edge, kind) \ 
   78     for (ir_edge_t const *edge = get_irn_out_edge_first_kind((irn), (kind)), *edge##__next; \ 
   79          edge ? edge##__next = get_irn_out_edge_next((irn), edge), 1 : (edge##__next = NULL, 0); \ 
   85 #define foreach_out_edge(irn, edge)       foreach_out_edge_kind(irn, edge, EDGE_KIND_NORMAL) 
   90 #define foreach_out_edge_safe(irn, edge)  foreach_out_edge_kind_safe(irn, edge, EDGE_KIND_NORMAL) 
   95 #define foreach_block_succ(bl, edge)      foreach_out_edge_kind(bl, edge, EDGE_KIND_BLOCK) 
  186                                                 unsigned assert_on_problem);
 
  189 #define edges_reroute(old, nw)                      edges_reroute_kind(old, nw, EDGE_KIND_NORMAL) 
  191 #define edges_activated(irg)                            (edges_activated_kind(irg, EDGE_KIND_NORMAL) && edges_activated_kind(irg, EDGE_KIND_BLOCK)) 
  193 #ifndef get_irn_n_edges 
  195 #define get_irn_n_edges(irn)                            get_irn_n_edges_kind(irn, EDGE_KIND_NORMAL) 
  198 #ifndef get_irn_out_edge_first 
  200 #define get_irn_out_edge_first(irn)                     get_irn_out_edge_first_kind(irn, EDGE_KIND_NORMAL) 
  203 #ifndef get_block_succ_first 
  205 #define get_block_succ_first(irn)                       get_irn_out_edge_first_kind(irn, EDGE_KIND_BLOCK) 
  208 #ifndef get_block_succ_next 
  210 #define get_block_succ_next(irn, last)                  get_irn_out_edge_next(irn, last)