summaryrefslogtreecommitdiffstats
path: root/gcc/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r--gcc/ChangeLog36
1 files changed, 36 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a38894e44e0..7994797e19f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,39 @@
+2007-12-06 Harsha Jagasia <harsha.jagasia@amd.com>
+
+ * tree-vectorizer.c (slpeel_add_loop_guard): Gimplify the condition.
+ (set_prologue_iterations): New. Set the prologue iterations to total
+ number of scalar iterations if the cost model check indicates that
+ scalar code should be generated.
+ (slpeel_tree_peel_loop_to_edge): Add a new parameter and code for
+ generating the cost condition for epilog. Call
+ set_prologue_iterations to generate cost condition for prolog.
+ (new_loop_vec_info): Initialize LOOP_VINFO_NITERS_UNCHANGED.
+ * tree-vectorizer.h (LOOP_VINFO_NITERS_UNCHANGED): New.
+ (slpeel_tree_peel_loop_to_edge): Update declaration.
+ (set_prologue_iterations): New declaration.
+ * tree-vect-analyze.c (vect_analyze_loop_form): Update
+ LOOP_VINFO_NITERS_UNCHANGED.
+ * tree-vect-transform.c
+ (vect_estimate_min_profitable_iters): Add new parameter and
+ code to check if run time cost model test is needed.
+ Remove code that adds builtin vectorization cost to scalar
+ outside cost for the run time cost model test. If run time
+ cost model test is needed add the appropriate guard cost to
+ the scalar outside cost. The guard cost depends on whether
+ the guard is generated at versioning or at prolog generation
+ or at epilog generation. Change cost model equation to include
+ scalar outside cost.
+ (conservative_cost_threshold): New. Return the less conservative
+ profitability threshold between the cost model threshold and the
+ user defined vectorization threshold.
+ (vect_do_peeling_for_loop_bound): Call conservative_cost_threshold.
+ (vect_do_peeling_for_alignment): Same.
+ (vect_loop_versioning): Same.
+ (vect_create_cond_for_align_checks): ANDs the cost model condition
+ with the alignment condition.
+ (vect_transform_loop): Call loop versioning only when there is a
+ misalignment or an aliasing problem.
+
2007-12-06 Jakub Jelinek <jakub@redhat.com>
PR middle-end/20983
OpenPOWER on IntegriCloud