===================================================================
@@ -36,12 +36,16 @@ int main (int argc, char **argv)
{
check_vect ();
- short Kernel[8][24] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__)));
+ short Kernel[8][24];
int k,i;
for (k = 0; k<8; k++)
- for (i = 0; i<24; i++)
- Kernel[k][i] = 0;
+ for (i = 0; i<24; i++)
+ {
+ Kernel[k][i] = 0;
+ /* Don't get into the game of versioning vs. peeling. */
+ __asm__ volatile ("" : : : "memory");
+ }
VecBug(Kernel);
VecBug2(Kernel);
@@ -49,7 +53,6 @@ int main (int argc, char **argv)
return 0;
}
-/* The loops in VecBug and VecBug2 require versioning for alignment.
- The loop in main is aligned. */
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 3 "vect" } } */
+/* The loops in VecBug and VecBug2 require versioning for alignment. */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 2 "vect" } } */
/* { dg-final { scan-tree-dump-times "Alignment of access forced using versioning" 2 "vect" { target { vect_no_align && { ! vect_hw_misalign } } } } } */