diff options
author | Sebastian Pop <pop@cri.ensmp.fr> | 2005-08-13 19:28:43 +0200 |
---|---|---|
committer | Sebastian Pop <spop@gcc.gnu.org> | 2005-08-13 17:28:43 +0000 |
commit | d77704579c02c48223abfe8db569941dfe0e4f46 (patch) | |
tree | e16e6f08588cfad8cd3b6712bf30a607ac5f488d /gcc/tree-scalar-evolution.c | |
parent | e2df5c1deede2103cdc08e772cb57aede4288043 (diff) | |
download | gcc-d77704579c02c48223abfe8db569941dfe0e4f46.zip gcc-d77704579c02c48223abfe8db569941dfe0e4f46.tar.gz gcc-d77704579c02c48223abfe8db569941dfe0e4f46.tar.bz2 |
re PR tree-optimization/22236 (wrong code for casts and scev)
PR tree-optimization/22236
* tree-cfg.c (print_pred_bbs, print_succ_bbs): Correctly print
successors and predecessors.
* tree-chrec.c (chrec_convert): Before converting, check that
sequences don't wrap.
* tree-data-ref.c (compute_estimated_nb_iterations): Moved ...
(analyze_array): Extern.
(find_data_references_in_loop): Remove call to
compute_estimated_nb_iterations.
* tree-data-ref.h (analyze_array): Declared.
* tree-flow-inline.h (single_ssa_tree_operand, single_ssa_use_operand,
single_ssa_def_operand, zero_ssa_operands): Fix documentation.
* tree-flow.h (scev_probably_wraps_p): Declare with an extra parameter.
* tree-scalar-evolution.c (instantiate_parameters_1): Factor entry
condition.
* tree-ssa-loop-ivcanon.c: Fix documentation.
* tree-ssa-loop-ivopts.c (idx_find_step): Add a fixme note.
* tree-ssa-loop-niter.c (compute_estimated_nb_iterations): ... here.
(infer_loop_bounds_from_undefined): New.
(estimate_numbers_of_iterations_loop): Use
infer_loop_bounds_from_undefined.
(used_in_pointer_arithmetic_p): New.
(scev_probably_wraps_p): Pass an extra parameter. Call
used_in_pointer_arithmetic_p. Check that AT_STMT is not null.
(convert_step): Fix documentation.
* tree-vrp.c (adjust_range_with_scev): Call instantiate_parameters.
Use initial_condition_in_loop_num and evolution_part_in_loop_num
instead of CHREC_LEFT and CHREC_RIGHT. Adjust the call to
scev_probably_wraps_p.
From-SVN: r103055
Diffstat (limited to 'gcc/tree-scalar-evolution.c')
-rw-r--r-- | gcc/tree-scalar-evolution.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/gcc/tree-scalar-evolution.c b/gcc/tree-scalar-evolution.c index 65348d0..db798c0 100644 --- a/gcc/tree-scalar-evolution.c +++ b/gcc/tree-scalar-evolution.c @@ -1939,11 +1939,8 @@ instantiate_parameters_1 (struct loop *loop, tree chrec, basic_block def_bb; struct loop *def_loop; - if (chrec == NULL_TREE - || automatically_generated_chrec_p (chrec)) - return chrec; - - if (is_gimple_min_invariant (chrec)) + if (automatically_generated_chrec_p (chrec) + || is_gimple_min_invariant (chrec)) return chrec; switch (TREE_CODE (chrec)) |