+2013-05-15 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-loop.c (vect_transform_loop): Use MSG_NOTE instead
+ of MSG_OPTIMIZED_LOCATIONS.
+ * tree-vect-slp.c (vect_make_slp_decision): Likewise.
+ (vect_slp_transform_bb): Indicate location in MSG_OPTIMIZED_LOCATIONS
+ message.
+ * tree-vectorizer.c (vectorize_loops): Use MSG_NOTE instead
+ of MSG_OPTIMIZED_LOCATIONS.
+ (execute_vect_slp): Likewise.
+ * tree-vect-loop-manip.c (vect_do_peeling_for_loop_bound): Likewise.
+ (vect_create_cond_for_alias_checks): Likewise.
+ * tree-vect-patterns.c (vect_recog_dot_prod_pattern): Likewise.
+ (vect_recog_widen_mult_pattern): Likewise.
+ (vect_recog_widen_sum_pattern): Likewise.
+ (vect_recog_over_widening_pattern): Likewise.
+ (vect_recog_widen_shift_pattern): Likewise.
+ (vect_recog_vector_vector_shift_pattern): Likewise.
+ (vect_recog_divmod_pattern): Likewise.
+ (vect_recog_mixed_size_cond_pattern): Likewise.
+ (vect_recog_bool_pattern): Likewise.
+ (vect_pattern_recog_1): Likewise.
+
2013-05-15 Martin Jambor <mjambor@suse.cz>
* ipa-prop.c (ipa_make_edge_direct_to_target): Redirect calls to
gimple_seq cond_expr_stmt_list = NULL;
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"=== vect_do_peeling_for_loop_bound ===");
initialize_original_copy_tables ();
if (check_profitability)
max_iter = MAX (max_iter, (int) th - 1);
record_niter_bound (new_loop, double_int::from_shwi (max_iter), false, true);
- dump_printf (MSG_OPTIMIZED_LOCATIONS,
+ dump_printf (MSG_NOTE,
"Setting upper bound of nb iterations for epilogue "
"loop to %d\n", max_iter);
int npeel = LOOP_PEELING_FOR_ALIGNMENT (loop_vinfo);
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"known peeling = %d.", npeel);
iters = build_int_cst (niters_type, npeel);
if (dump_enabled_p ())
{
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"niters for prolog loop: ");
- dump_generic_expr (MSG_OPTIMIZED_LOCATIONS, TDF_SLIM, iters);
+ dump_generic_expr (MSG_NOTE, TDF_SLIM, iters);
}
var = create_tmp_var (niters_type, "prolog_loop_niters");
struct data_reference *dr;
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"=== vect_update_inits_of_dr ===");
FOR_EACH_VEC_ELT (datarefs, i, dr)
int bound = 0;
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"=== vect_do_peeling_for_alignment ===");
initialize_original_copy_tables ();
if (check_profitability)
max_iter = MAX (max_iter, (int) th - 1);
record_niter_bound (new_loop, double_int::from_shwi (max_iter), false, true);
- dump_printf (MSG_OPTIMIZED_LOCATIONS,
+ dump_printf (MSG_NOTE,
"Setting upper bound of nb iterations for prologue "
"loop to %d\n", max_iter);
if (dump_enabled_p ())
{
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"create runtime check for data references ");
- dump_generic_expr (MSG_OPTIMIZED_LOCATIONS, TDF_SLIM, DR_REF (dr_a));
- dump_printf (MSG_OPTIMIZED_LOCATIONS, " and ");
- dump_generic_expr (MSG_OPTIMIZED_LOCATIONS, TDF_SLIM, DR_REF (dr_b));
+ dump_generic_expr (MSG_NOTE, TDF_SLIM, DR_REF (dr_a));
+ dump_printf (MSG_NOTE, " and ");
+ dump_generic_expr (MSG_NOTE, TDF_SLIM, DR_REF (dr_b));
}
seg_a_min = addr_base_a;
}
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"created %u versioning for alias checks.\n",
may_alias_ddrs.length ());
}
}
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location, "LOOP VECTORIZED.");
- if (loop->inner && dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
- "OUTER LOOP VECTORIZED.");
+ {
+ dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ "LOOP VECTORIZED\n");
+ if (loop->inner)
+ dump_printf_loc (MSG_NOTE, vect_location,
+ "OUTER LOOP VECTORIZED\n");
+ }
}
if (dump_enabled_p ())
{
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"vect_recog_dot_prod_pattern: detected: ");
- dump_gimple_stmt (MSG_OPTIMIZED_LOCATIONS, TDF_SLIM, pattern_stmt, 0);
+ dump_gimple_stmt (MSG_NOTE, TDF_SLIM, pattern_stmt, 0);
}
/* We don't allow changing the order of the computation in the inner-loop
/* Pattern detected. */
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"vect_recog_widen_mult_pattern: detected: ");
/* Check target support */
if (dump_enabled_p ())
{
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"vect_recog_widen_sum_pattern: detected: ");
- dump_gimple_stmt (MSG_OPTIMIZED_LOCATIONS, TDF_SLIM, pattern_stmt, 0);
+ dump_gimple_stmt (MSG_NOTE, TDF_SLIM, pattern_stmt, 0);
}
/* We don't allow changing the order of the computation in the inner-loop
if (dump_enabled_p ())
{
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"created pattern stmt: ");
- dump_gimple_stmt (MSG_OPTIMIZED_LOCATIONS, TDF_SLIM, pattern_stmt, 0);
+ dump_gimple_stmt (MSG_NOTE, TDF_SLIM, pattern_stmt, 0);
}
type = gimple_expr_type (stmt);
/* Pattern detected. */
if (dump_enabled_p ())
{
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"vect_recog_over_widening_pattern: detected: ");
- dump_gimple_stmt (MSG_OPTIMIZED_LOCATIONS, TDF_SLIM, pattern_stmt, 0);
+ dump_gimple_stmt (MSG_NOTE, TDF_SLIM, pattern_stmt, 0);
}
return pattern_stmt;
/* Pattern detected. */
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"vect_recog_widen_shift_pattern: detected: ");
/* Check target support. */
/* Pattern detected. */
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"vect_recog_vector_vector_shift_pattern: detected: ");
/* Pattern supported. Create a stmt to be used to replace the pattern. */
/* Pattern detected. */
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"vect_recog_divmod_pattern: detected: ");
cond = build2 (LT_EXPR, boolean_type_node, oprnd0,
/* Pattern detected. */
if (dump_enabled_p ())
{
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"vect_recog_divmod_pattern: detected: ");
- dump_gimple_stmt (MSG_OPTIMIZED_LOCATIONS, TDF_SLIM, pattern_stmt, 0);
+ dump_gimple_stmt (MSG_NOTE, TDF_SLIM, pattern_stmt, 0);
}
stmts->safe_push (last_stmt);
*type_out = vectype;
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"vect_recog_mixed_size_cond_pattern: detected: ");
return pattern_stmt;
*type_in = vectype;
stmts->safe_push (last_stmt);
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"vect_recog_bool_pattern: detected: ");
return pattern_stmt;
*type_in = vectype;
stmts->safe_push (last_stmt);
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"vect_recog_bool_pattern: detected: ");
return pattern_stmt;
}
/* Found a vectorizable pattern. */
if (dump_enabled_p ())
{
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"pattern recognized: ");
- dump_gimple_stmt (MSG_OPTIMIZED_LOCATIONS, TDF_SLIM, pattern_stmt, 0);
+ dump_gimple_stmt (MSG_NOTE, TDF_SLIM, pattern_stmt, 0);
}
/* Mark the stmts that are involved in the pattern. */
pattern_stmt = STMT_VINFO_RELATED_STMT (stmt_info);
if (dump_enabled_p ())
{
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"additional pattern stmt: ");
- dump_gimple_stmt (MSG_OPTIMIZED_LOCATIONS, TDF_SLIM, pattern_stmt, 0);
+ dump_gimple_stmt (MSG_NOTE, TDF_SLIM, pattern_stmt, 0);
}
vect_mark_pattern_stmts (stmt, pattern_stmt, NULL_TREE);
LOOP_VINFO_SLP_UNROLLING_FACTOR (loop_vinfo) = unrolling_factor;
if (decided_to_slp && dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"Decided to SLP %d instances. Unrolling factor %d",
decided_to_slp, unrolling_factor);
}
if (dump_enabled_p ())
- dump_printf (MSG_OPTIMIZED_LOCATIONS, "BASIC BLOCK VECTORIZED\n");
+ dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ "BASIC BLOCK VECTORIZED\n");
destroy_bb_vec_info (bb_vinfo);
}
vect_location = find_loop_location (loop);
if (LOCATION_LOCUS (vect_location) != UNKNOWN_LOC
&& dump_enabled_p ())
- dump_printf (MSG_ALL, "\nAnalyzing loop at %s:%d\n",
+ dump_printf (MSG_NOTE, "\nAnalyzing loop at %s:%d\n",
LOC_FILE (vect_location), LOC_LINE (vect_location));
loop_vinfo = vect_analyze_loop (loop);
if (LOCATION_LOCUS (vect_location) != UNKNOWN_LOC
&& dump_enabled_p ())
- dump_printf (MSG_ALL, "\n\nVectorizing loop at %s:%d\n",
+ dump_printf (MSG_NOTE, "\n\nVectorizing loop at %s:%d\n",
LOC_FILE (vect_location), LOC_LINE (vect_location));
vect_transform_loop (loop_vinfo);
num_vectorized_loops++;
statistics_counter_event (cfun, "Vectorized loops", num_vectorized_loops);
if (dump_enabled_p ()
|| (num_vectorized_loops > 0 && dump_enabled_p ()))
- dump_printf_loc (MSG_ALL, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"vectorized %u loops in function.\n",
num_vectorized_loops);
{
vect_slp_transform_bb (bb);
if (dump_enabled_p ())
- dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location,
+ dump_printf_loc (MSG_NOTE, vect_location,
"basic block vectorized using SLP\n");
}
}