X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fopt%2Freturn.c;h=49088db2901bce02196e7c66e2c330d9ff4a3afa;hb=44faeb9742640d3498eb4482f98eb1255607c4d6;hp=ce580eeec8768c34b1613226ba5b948dde0c5e89;hpb=f3b8448f1f42a265342841e97df6f0212f5f898f;p=libfirm diff --git a/ir/opt/return.c b/ir/opt/return.c index ce580eeec..49088db29 100644 --- a/ir/opt/return.c +++ b/ir/opt/return.c @@ -190,6 +190,8 @@ static int can_move_ret(ir_node *ret) { /* check, that predecessors are Jmps */ n = get_Block_n_cfgpreds(retbl); + if (n <= 1) + return 0; for (i = 0; i < n; ++i) { ir_node *pred = get_Block_cfgpred(retbl, i); @@ -202,9 +204,7 @@ static int can_move_ret(ir_node *ret) { set_Block_cfgpred(retbl, i, jmp); } } - - /* if we have 0 control flow predecessors, we cannot move :-) */ - return n > 0; + return 1; } /*