i386: Adjust rtx cost for imulq and imulw [PR115749]
[official-gcc.git] / gcc / testsuite / gcc.dg / vect / vect-outer-2c-big-array.c
blob36c9681201532960b3eecda2b252ebe83036a95a
1 /* { dg-require-effective-target vect_float } */
2 /* { dg-require-effective-target vect_intfloat_cvt } */
3 #include <stdarg.h>
4 #include "tree-vect.h"
6 #define N 160
7 float image[2*N][2*N][N] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__)));
9 __attribute__ ((noinline)) void
10 foo (){
11 int i,j,k;
13 for (k=0; k<N; k++) {
14 for (i = 0; i < N; i++) {
15 for (j = 0; j < N; j+=2) {
16 image[k][j][i] = j+i+k;
22 int main (void)
24 check_vect ();
25 int i, j, k;
27 foo ();
29 for (k=0; k<N; k++) {
30 for (i = 0; i < N; i++) {
31 #pragma GCC novector
32 for (j = 0; j < N; j+=2) {
33 if (image[k][j][i] != j+i+k)
34 abort ();
39 return 0;
42 /* { dg-final { scan-tree-dump-times "OUTER LOOP VECTORIZED" 1 "vect" } } */