[testsuite] require sqrt_insn effective target where needed
[official-gcc.git] / gcc / testsuite / gcc.target / powerpc / swaps-p8-18.c
blob00e52c1e693e1dcfb599fc62e4442ece26ad8bf4
1 /* { dg-do compile } */
2 /* { dg-require-effective-target powerpc_vsx_ok } */
3 /* { dg-options "-mdejagnu-cpu=power8 -mvsx -O3" } */
4 /* { dg-final { scan-assembler-not "xxpermdi" } } */
6 /* This is a test for a specific convert-splat permute removal. */
8 void compute (float*, float*, float*, int, int);
9 double test (void);
10 double gorp;
12 int main (void)
14 float X[10000], Y[256], Z[2000];
15 int i;
16 for (i = 0; i < 2500; i++)
17 compute (X, Y, Z, 256, 2000);
18 gorp = test ();
21 void compute(float *X, float *Y, float *Z, int m, int n)
23 int i, j;
24 float w, *x, *y;
26 for (i = 0; i < n; i++)
28 w = 0.0;
29 x = X++;
30 y = Y;
31 for (j = 0; j < m; j++)
32 w += (*x++) * (*y++);
33 Z[i] = w;