Rebase.
[official-gcc.git] / gcc / testsuite / gcc.dg / torture / pr36891.c
blobab58e43b9cd5387e58e61dde8c911c093946cf3c
1 /* { dg-do compile } */
2 /* { dg-options "-ffast-math" } */
3 /* { dg-options "-ffast-math -msse" { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
4 /* { dg-require-effective-target sse { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
5 /* { dg-options "-ffast-math -mabi=altivec" { target { { powerpc*-*-linux* } && ia32 } } } */
7 #define __vector __attribute__((vector_size(16) ))
8 __vector float f(void);
9 void g(__vector float);
10 void RRB( __vector float vdist, __vector float vx)
12 int detail;
13 for(detail = 0; detail < 5;++detail)
15 __vector float frand = f();
16 __vector float pullperc = frand/ vdist;
17 __vector float pullx = vx * pullperc;
18 g(pullx);
22 /* Ignore a warning that is irrelevant to the purpose of this test. */
23 /* { dg-prune-output ".*GCC vector returned by reference.*" } */