Commit 8f7de592 by Ira Rosen Committed by Ira Rosen

re PR tree-optimization/49093 (ICE in vect_enhance_data_refs_alignment() with…

re PR tree-optimization/49093 (ICE in vect_enhance_data_refs_alignment() with volatile inside peeled loop)


        PR tree-optimization/49093
        * tree-vect-data-refs.c (vect_analyze_data_refs): Fail for
        volatile data references.

From-SVN: r174477
parent 8d8a3bda
2011-05-31 Ira Rosen <ira.rosen@linaro.org>
PR tree-optimization/49093
* tree-vect-data-refs.c (vect_analyze_data_refs): Fail for volatile
data references.
2011-05-31 Dodji Seketeli <dodji@redhat.com>
PR debug/49047
......
2011-05-31 Ira Rosen <ira.rosen@linaro.org>
PR tree-optimization/49093
* gcc.dg/vect/pr49093.c: New test.
2011-05-31 Dodji Seketeli <dodji@redhat.com>
PR debug/49047
......
/* { dg-do compile } */
/* { dg-options "-O1 -ftree-vectorize -fdump-tree-vect-details -fno-tree-fre" } */
volatile unsigned char g_324[4] = {0, 1, 0, 1};
void foo (int);
int x, y;
void func_81(void)
{
int l_466, l_439[7] = {0}, g_97;
lbl_473:
if (x) {
for (g_97 = 0; (g_97 < 4); ++g_97) {
if (y)
goto lbl_473;
g_324[g_97];
l_466 = l_439[g_97];
}
foo(l_466);
}
}
/* { dg-final { cleanup-tree-dump "vect" } } */
......@@ -2584,6 +2584,16 @@ vect_analyze_data_refs (loop_vec_info loop_vinfo,
return false;
}
if (TREE_THIS_VOLATILE (DR_REF (dr)))
{
if (vect_print_dump_info (REPORT_UNVECTORIZED_LOCATIONS))
{
fprintf (vect_dump, "not vectorized: volatile type ");
print_gimple_stmt (vect_dump, stmt, 0, TDF_SLIM);
}
return false;
}
base = unshare_expr (DR_BASE_ADDRESS (dr));
offset = unshare_expr (DR_OFFSET (dr));
init = unshare_expr (DR_INIT (dr));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment