Commit 63dd9d13 authored by Matthias Braun's avatar Matthias Braun
Browse files

make sure loops are analysid in loopana, reformatted belower

[r15718]
parent cdc20df8
......@@ -169,6 +169,11 @@ be_loopana_t *be_new_loop_pressure_cls(be_irg_t *birg,
DBG((dbg, LEVEL_1, " Computing register pressure for class %s:\n", cls->name));
DBG((dbg, LEVEL_1, "=====================================================\n", cls->name));
/* construct control flow loop tree */
if (! (get_irg_loopinfo_state(irg) & loopinfo_cf_consistent)) {
construct_cf_backedges(irg);
}
be_compute_loop_pressure(loop_ana, get_irg_loop(irg), cls);
return loop_ana;
......@@ -190,6 +195,11 @@ be_loopana_t *be_new_loop_pressure(be_irg_t *birg) {
loop_ana->data = new_set(cmp_loop_info, 16);
loop_ana->birg = birg;
/* construct control flow loop tree */
if (! (get_irg_loopinfo_state(irg) & loopinfo_cf_consistent)) {
construct_cf_backedges(irg);
}
for (i = arch_isa_get_n_reg_class(isa) - 1; i >= 0; --i) {
const arch_register_class_t *cls = arch_isa_get_reg_class(isa, i);
DBG((dbg, LEVEL_1, "\n=====================================================\n", cls->name));
......
......@@ -1005,15 +1005,18 @@ found_front:
* @param walk_env The walker environment
*/
static void lower_nodes_after_ra_walker(ir_node *irn, void *walk_env) {
if (! is_Block(irn) && ! is_Proj(irn)) {
if (be_is_Perm(irn)) {
int perm_stayed = push_through_perm(irn, walk_env);
if (perm_stayed)
lower_perm_node(irn, walk_env);
}
}
int perm_stayed;
return;
if (is_Block(irn) || is_Proj(irn))
return;
if (!be_is_Perm(irn))
return;
perm_stayed = push_through_perm(irn, walk_env);
if (!perm_stayed)
return;
lower_perm_node(irn, walk_env);
}
/**
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment