Commit 6cd3dd5b by Ira Rosen Committed by Ira Rosen

tree-vect-analyze.c (vect_object_analysis): Analyze initial condition of access…

tree-vect-analyze.c (vect_object_analysis): Analyze initial condition of access function instead of base.

        * tree-vect-analyze.c (vect_object_analysis): Analyze initial
        condition of access function instead of base.

From-SVN: r96092
parent e561e568
2005-03-08 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/20122
* tree-vect-analyze.c (vect_object_analysis): Analyze initial
condition of access function instead of base.
2005-03-07 Jeff Law <law@redhat.com>
Steven Bosscher <stevenb@suse.de>
......
2005-03-08 Ira Rosen <irar@il.ibm.com>
* gcc.dg/vect/pr20122.c: New test.
2005-03-07 Jeff Law <law@redhat.com>
* gcc.dg/tree-ssa/20030821-1.c: Verify that the computed goto
......
/* { dg-require-effective-target vect_int } */
#include <stdarg.h>
#include "tree-vect.h"
typedef short ashort __attribute__ ((__aligned__(16)));
ashort Kernshort[24];
static void VecBug(ashort Kernel[8][24]) __attribute__((noinline));
static void VecBug(ashort Kernel[8][24]);
/* Doesn't occur of only inner-loop. */
static void VecBug(ashort Kernel[8][24])
{
int k,i;
for (k = 0; k<8; k++)
for (i = 0; i<24; i++)
Kernshort[i] = Kernel[k][i];
}
int main (int argc, char **argv)
{
check_vect ();
ashort Kernel[8][24];
int k,i;
for (k = 0; k<8; k++)
for (i = 0; i<24; i++)
Kernel[k][i] = 0;
VecBug(Kernel);
return 0;
}
/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 2 "vect" } } */
......@@ -1654,10 +1654,11 @@ vect_object_analysis (tree memref, tree stmt, bool is_read,
fprintf (vect_dump, "not vectorized: ptr is loop invariant.");
return NULL_TREE;
}
/* Since there exists DR for MEMREF, we are analyzing the base of
handled component, which not necessary has evolution in the
/* Since there exists DR for MEMREF, we are analyzing the init of
the access function, which not necessary has evolution in the
loop. */
address_to_analyze = TREE_OPERAND (base, 0);
address_to_analyze = initial_condition_in_loop_num (access_fn,
loop->num);
}
/* 3.3 set data-reference structure for MEMREF. */
......
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