X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fopt%2Fconvopt.c;h=e3b0e2583e357a4d5af32510ffe54395ffb6c954;hb=b27ae245166bb695bc4e418ff416d91bc37d0f28;hp=696238e79edf099a88ecc78f7adf3e94ae479232;hpb=6730cf921d356d992d35526daf57f82af7ab0816;p=libfirm diff --git a/ir/opt/convopt.c b/ir/opt/convopt.c index 696238e79..e3b0e2583 100644 --- a/ir/opt/convopt.c +++ b/ir/opt/convopt.c @@ -1,5 +1,5 @@ /* - * 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. * @@ -77,7 +77,7 @@ static bool is_optimizable_node(const ir_node *node) } } -static tarval* conv_const_tv(const ir_node* cnst, ir_mode* dest_mode) +static ir_tarval* conv_const_tv(const ir_node* cnst, ir_mode* dest_mode) { return tarval_convert_to(get_Const_tarval(cnst), dest_mode); } @@ -93,8 +93,8 @@ static int is_downconv(ir_mode *src_mode, ir_mode *dest_mode) static int get_conv_costs(const ir_node *node, ir_mode *dest_mode) { ir_mode *mode = get_irn_mode(node); - size_t arity; - size_t i; + int arity; + int i; int costs; if (mode == dest_mode) @@ -120,8 +120,8 @@ static int get_conv_costs(const ir_node *node, ir_mode *dest_mode) /* Take the minimum of the conversion costs for Phi predecessors as only one * branch is actually executed at a time */ if (is_Phi(node)) { - size_t i; - size_t arity = get_Phi_n_preds(node); + int i; + int arity = get_Phi_n_preds(node); int costs; costs = get_conv_costs(get_Phi_pred(node, 0), dest_mode); @@ -175,9 +175,9 @@ static ir_node *conv_transform(ir_node *node, ir_mode *dest_mode) { ir_mode *mode = get_irn_mode(node); ir_graph *irg = get_irn_irg(node); - size_t arity; - size_t conv_arity; - size_t i; + int arity; + int conv_arity; + int i; ir_node *new_node; ir_node **ins; @@ -186,7 +186,7 @@ static ir_node *conv_transform(ir_node *node, ir_mode *dest_mode) if (is_Const(node)) { /* TODO tarval module is incomplete and can't convert floats to ints */ - tarval *tv = conv_const_tv(node, dest_mode); + ir_tarval *tv = conv_const_tv(node, dest_mode); if (tv == tarval_bad) { return place_conv(node, dest_mode); } else { @@ -262,7 +262,7 @@ static void conv_opt_walker(ir_node *node, void *data) ir_mode *pred_mode; ir_mode *mode; int costs; - bool *changed = data; + bool *changed = (bool*)data; if (!is_Conv(node)) return; @@ -315,9 +315,6 @@ int conv_opt(ir_graph *irg) invalidate |= changed; } while (changed); - if (invalidate) { - set_irg_outs_inconsistent(irg); - } return invalidate; }