aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vectorizer.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/tree-vectorizer.c')
-rw-r--r--gcc/tree-vectorizer.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/gcc/tree-vectorizer.c b/gcc/tree-vectorizer.c
index 62767ed..b890801 100644
--- a/gcc/tree-vectorizer.c
+++ b/gcc/tree-vectorizer.c
@@ -4415,7 +4415,11 @@ vect_enhance_data_refs_alignment (loop_vec_info loop_vinfo)
{
struct data_reference *dr = VARRAY_GENERIC_PTR (loop_write_datarefs, i);
if (dr == LOOP_VINFO_UNALIGNED_DR (loop_vinfo))
- DR_MISALIGNMENT (dr) = 0;
+ {
+ DR_MISALIGNMENT (dr) = 0;
+ if (vect_debug_details (loop) || vect_debug_stats (loop))
+ fprintf (dump_file, "Alignment of access forced using peeling.");
+ }
else
DR_MISALIGNMENT (dr) = -1;
}
@@ -4423,7 +4427,11 @@ vect_enhance_data_refs_alignment (loop_vec_info loop_vinfo)
{
struct data_reference *dr = VARRAY_GENERIC_PTR (loop_read_datarefs, i);
if (dr == LOOP_VINFO_UNALIGNED_DR (loop_vinfo))
- DR_MISALIGNMENT (dr) = 0;
+ {
+ DR_MISALIGNMENT (dr) = 0;
+ if (vect_debug_details (loop) || vect_debug_stats (loop))
+ fprintf (dump_file, "Alignment of access forced using peeling.");
+ }
else
DR_MISALIGNMENT (dr) = -1;
}
@@ -4481,6 +4489,9 @@ vect_analyze_data_refs_alignment (loop_vec_info loop_vinfo)
fprintf (dump_file, "not vectorized: unsupported unaligned load.");
return false;
}
+ if (supportable_dr_alignment != dr_aligned
+ && (vect_debug_details (loop) || vect_debug_stats (loop)))
+ fprintf (dump_file, "Vectorizing an unaligned access.");
}
for (i = 0; i < VARRAY_ACTIVE_SIZE (loop_write_datarefs); i++)
{
@@ -4492,6 +4503,9 @@ vect_analyze_data_refs_alignment (loop_vec_info loop_vinfo)
fprintf (dump_file, "not vectorized: unsupported unaligned store.");
return false;
}
+ if (supportable_dr_alignment != dr_aligned
+ && (vect_debug_details (loop) || vect_debug_stats (loop)))
+ fprintf (dump_file, "Vectorizing an unaligned access.");
}
return true;