Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/vect/vect-nest-cycle-2.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
/* { dg-require-effective-target vect_float } */ #include <stdarg.h> #include "tree-vect.h" #define N 16 float out[N]; float check_res[N] = {880,864,848,832,816,800,784,768,752,736,720,704,688,672,656,640}; float a[2*N] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31}; /* Outer-loop vectorization. */ __attribute__ ((noinline)) void foo () { int i, j; float res; for (i = 0; i < N; i++) { res = 1000; for (j = 0; j < N; j++) res = res - a[i+j]; out[i] = res; } for (i = 0; i < N; i++) if (out[i] != check_res[i]) abort (); } int main () { check_vect (); foo(); return 0; } /* { dg-final { scan-tree-dump-times "OUTER LOOP VECTORIZED" 1 "vect" { xfail { vect_no_align && { ! vect_hw_misalign } } } } } */