+2008-12-12 Sebastian Pop <sebastian.pop@amd.com>
+
+ PR middle-end/38409
+ * graphite.c (nb_reductions_in_loop): Use simple_iv.
+
2008-12-12 Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
* config/i386/x86intrin.h: New header file to support all x86
{
gimple phi = gsi_stmt (gsi);
tree scev;
+ affine_iv iv;
if (!is_gimple_reg (PHI_RESULT (phi)))
continue;
scev = analyze_scalar_evolution (loop, PHI_RESULT (phi));
scev = instantiate_parameters (loop, scev);
- if (chrec_contains_undetermined (scev))
+ if (!simple_iv (loop, phi, PHI_RESULT (phi), &iv, true))
res++;
}
--- /dev/null
+/* { dg-options "-O2 -floop-block" } */
+
+typedef struct test input ;
+struct test
+{
+ int type ;
+ int symflag ;
+};
+Chv_copyEntriesToVector ( input *chv,double *dvec)
+{
+ double *entries ;
+ int mm, nent;
+ int first, i, k , stride ;
+ if ( ((chv)->type == 1) )
+ {
+ for ( i = 0 ; i < 10 ; i++)
+ {
+ dvec[2*mm] = entries[2*k] ;
+ k += stride ;
+ stride -= 2 ;
+ }
+ }
+ return(mm) ;
+}
+/* { dg-options "-O2 -floop-block" } */
+
+typedef struct test input ;
+struct test
+{
+ int type ;
+ int symflag ;
+};
+Chv_copyEntriesToVector ( input *chv,double *dvec)
+{
+ double *entries ;
+ int mm, nent;
+ int first, i, k , stride ;
+ if ( ((chv)->type == 1) )
+ {
+ for ( i = 0 ; i < 10 ; i++)
+ {
+ dvec[2*mm] = entries[2*k] ;
+ k += stride ;
+ stride -= 2 ;
+ }
+ }
+ return(mm) ;
+}