X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fir%2Firedges_t.h;h=28e9968c0c5a230567b486672d8bbcdbd28b7cfb;hb=e1c33a238578342a072e1c95ff12eefe6d0acd37;hp=f29dfba957c1ceaeb201eff13ccd0f90c222a3af;hpb=9b23a130beb15ad7eac348a9e98108892a11f0a5;p=libfirm diff --git a/ir/ir/iredges_t.h b/ir/ir/iredges_t.h index f29dfba95..28e9968c0 100644 --- a/ir/ir/iredges_t.h +++ b/ir/ir/iredges_t.h @@ -59,10 +59,10 @@ struct _ir_block_edge_t { }; /** Accessor for private irn info. */ -#define _get_irn_edge_info(irn) ((irn_edge_info_t *) &(irn)->edge_info) +#define _get_irn_edge_info(irn) (&(irn)->edge_info) /** Accessor for private irg info. */ -#define _get_irg_edge_info(irg) ((irg_edge_info_t *) &(irg)->edge_info) +#define _get_irg_edge_info(irg) (&(irg)->edge_info) /** * Convenience macro to get the outs_head from a irn_edge_info_t @@ -85,7 +85,7 @@ struct _ir_block_edge_t { */ static INLINE const ir_edge_t *_get_irn_out_edge_first(const ir_node *irn) { - struct list_head *head = _get_irn_outs_head(irn); + const struct list_head *head = _get_irn_outs_head(irn); return list_empty(head) ? NULL : list_entry(head->next, ir_edge_t, list); } @@ -165,15 +165,16 @@ static INLINE int _get_edge_src_pos(const ir_edge_t *edge) */ static INLINE int _get_irn_n_edges(const ir_node *irn) { -/* Perhaps out_count was buggy. This code does it more safely. - +/* Perhaps out_count was buggy. This code does it more safely. */ +#if 1 int res = 0; - struct list_head *pos, *head = _get_irn_outs_head(irn); + const struct list_head *pos, *head = _get_irn_outs_head(irn); list_for_each(pos, head) res++; return res; -*/ +#else return _get_irn_edge_info(irn)->out_count; +#endif } static INLINE int _edges_activated(const ir_graph *irg)