/*
- * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved.
+ * Copyright (C) 1995-2011 University of Karlsruhe. All right reserved.
*
* This file is part of libFirm.
*
const ir_edge_t *edge;
ir_node **df_list = NEW_ARR_F(ir_node *, 0);
ir_node **df;
- int len;
+ size_t len;
/* Add local dominance frontiers */
foreach_block_succ(blk, edge) {
* dominated by the given block.
*/
for (c = get_Block_dominated_first(blk); c; c = get_Block_dominated_next(c)) {
- int i;
+ size_t i;
ir_node **df_c_list = compute_df(c, info);
- for (i = ARR_LEN(df_c_list) - 1; i >= 0; --i) {
- ir_node *w = df_c_list[i];
+ for (i = ARR_LEN(df_c_list); i > 0;) {
+ ir_node *w = df_c_list[--i];
if (get_idom(w) != blk)
ARR_APP1(ir_node *, df_list, w);
}
ir_node **be_get_dominance_frontier(const be_dom_front_info_t *info,
ir_node *block)
{
- return pmap_get(info->df_map, block);
+ return (ir_node**)pmap_get(info->df_map, block);
}