aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-flow.h
diff options
context:
space:
mode:
authorZdenek Dvorak <ook@ucw.cz>2008-01-26 23:44:19 +0100
committerZdenek Dvorak <rakdver@gcc.gnu.org>2008-01-26 22:44:19 +0000
commit6e8c65f6621fb00e9008056c7e81860f2e96284c (patch)
tree30387dd4a3df50203ec75e44d117a5789e7adce1 /gcc/tree-flow.h
parent2c80cb0ef7df9e250a0a7826a4414d0895c65027 (diff)
downloadgcc-6e8c65f6621fb00e9008056c7e81860f2e96284c.zip
gcc-6e8c65f6621fb00e9008056c7e81860f2e96284c.tar.gz
gcc-6e8c65f6621fb00e9008056c7e81860f2e96284c.tar.bz2
re PR target/34711 (g++.dg/tree-ssa/ivopts-1.C fails for power and arm)
PR target/34711 * tree-ssa-loop-ivopts.c (comp_cost): New type. (zero_cost, infinite_cost): New constants. (struct cost_pair): Change type of cost to comp_cost. (struct iv_ca): Change type of cand_use_cost and cost to comp_cost. (new_cost, add_costs, sub_costs, compare_costs, infinite_cost_p): New functions. (set_use_iv_cost, force_expr_to_var_cost, force_var_cost, split_address_cost, ptr_difference_cost, difference_cost, get_computation_cost_at, get_computation_cost, determine_use_iv_cost_generic, determine_use_iv_cost_address, determine_use_iv_cost_condition, determine_use_iv_costs, cheaper_cost_pair, iv_ca_recount_cost, iv_ca_set_no_cp, iv_ca_set_cp, iv_ca_cost, iv_ca_new, iv_ca_dump, iv_ca_extend, iv_ca_narrow, iv_ca_prune, try_improve_iv_set, find_optimal_iv_set): Change type of cost to comp_cost. (determine_iv_cost): Increase cost of non-original ivs, instead of decreasing the cost of original ones. (get_address_cost): Indicate the complexity of the addressing mode in comp_cost. (try_add_cand_for): Prefer using ivs not specific to some object. * tree-flow.h (force_expr_to_var_cost): Declaration removed. From-SVN: r131877
Diffstat (limited to 'gcc/tree-flow.h')
-rw-r--r--gcc/tree-flow.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/gcc/tree-flow.h b/gcc/tree-flow.h
index a96f8b2..adc2508 100644
--- a/gcc/tree-flow.h
+++ b/gcc/tree-flow.h
@@ -1013,7 +1013,6 @@ bool for_each_index (tree *, bool (*) (tree, tree *, void *), void *);
void create_iv (tree, tree, tree, struct loop *, block_stmt_iterator *, bool,
tree *, tree *);
basic_block split_loop_exit_edge (edge);
-unsigned force_expr_to_var_cost (tree);
void standard_iv_increment_position (struct loop *, block_stmt_iterator *,
bool *);
basic_block ip_end_pos (struct loop *);