X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbemain.c;h=d02d54342725888079bd91446f20ecbf8253ec7d;hb=30a48b51f75dab1a41560ba21f4ac0ab59e3a189;hp=47eceacfe20a0d8f59ed615c82a7c6ecde9c4a07;hpb=994d0ebad74ba3df6ccc42ff0cee6aa8ee568ac3;p=libfirm diff --git a/ir/be/bemain.c b/ir/be/bemain.c index 47eceacfe..d02d54342 100644 --- a/ir/be/bemain.c +++ b/ir/be/bemain.c @@ -413,6 +413,10 @@ static void initialize_birg(be_irg_t *birg, ir_graph *irg, be_main_env_t *env) /* set the current graph (this is important for several firm functions) */ current_ir_graph = irg; + /* For code generation all unreachable code and Bad nodes should be gone */ + remove_unreachable_code(irg); + remove_bads(irg); + /* we do this before critical edge split. As this produces less returns, because sometimes (= 164.gzip) multiple returns are slower */ normalize_n_returns(irg);