inline_leave_functions(): uses new collect_calls2() and needs loop-info
authorMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Tue, 13 May 2008 19:17:20 +0000 (19:17 +0000)
committerMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Tue, 13 May 2008 19:17:20 +0000 (19:17 +0000)
[r19602]

ir/opt/opt_inline.c

index fef6a96..ac7581a 100644 (file)
@@ -1530,6 +1530,7 @@ void inline_leave_functions(int maxsize, int leavesize, int size, int ignore_run
                assert(get_irg_phase_state(irg) != phase_building);
                free_callee_info(irg);
 
+               assure_cf_loop(irg);
                wenv.x = get_irg_link(irg);
                irg_walk_graph(irg, NULL, collect_calls2, &wenv);
        }
@@ -1642,6 +1643,7 @@ void inline_leave_functions(int maxsize, int leavesize, int size, int ignore_run
                                        callee_env = alloc_inline_irg_env();
                                        set_irg_link(copy, callee_env);
 
+                                       assure_cf_loop(irg);
                                        wenv.x              = callee_env;
                                        wenv.ignore_callers = 1;
                                        irg_walk_graph(copy, NULL, collect_calls2, &wenv);