OSDN Git Service

2004-10-05 Andrew Pinski <pinskia@physics.uc.edu>
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.c-torture / compile / simd-3.c
1 #include <float.h>
2
3 /* If double is not wider than float, we probably don't have DFmode,
4    or at least it's not as wide as double.  */
5 #if DBL_MANT_DIG > FLT_MANT_DIG
6 typedef double floatvect2 __attribute__((vector_size (16)));
7
8 typedef union
9 {
10     floatvect2 vector;
11     double f[2];
12 }resfloatvect2;
13
14 void tempf(double *x, double *y)
15 {
16         floatvect2 temp={x[0],x[1]};
17         floatvect2 temp1={y[0],y[1]};
18         resfloatvect2 temp2;
19         temp2.vector=temp+temp1;
20         x[0]=temp2.f[0];
21         x[1]=temp2.f[1];
22 }
23 #endif