OSDN Git Service

* expmed.c (store_bit_field_1): Properly truncate the paradoxical
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.target / mips / fpr-moves-7.c
1 /* { dg-options "(-mips16) -mabi=64 -O2 -EL" } */
2
3 extern long double g[16];
4 extern unsigned char gstuff[0x10000];
5
6 NOMIPS16 long double
7 foo (long double i1, long double i2, long double i3, long double i4,
8      long double *x, unsigned char *lstuff)
9 {
10   g[0] = i1;
11   g[1] = i2;
12   g[2] = i3;
13   g[3] = i4;
14   x[0] = x[4];
15   x[1] = 0;
16   x[2] = 1.0;
17   x[3] = g[4];
18   x[4] = *(long double *) (lstuff + 0x7fff);
19   return *(long double *) (gstuff + 0x7fff);
20 }
21
22 MIPS16 long double
23 bar (long double i1, long double i2, long double i3, long double i4,
24      long double *x, unsigned char *lstuff)
25 {
26   g[0] = i1;
27   g[1] = i2;
28   g[2] = i3;
29   g[3] = i4;
30   x[0] = x[4];
31   x[1] = 0;
32   x[2] = 1.0;
33   x[3] = g[4];
34   x[4] = *(long double *) (lstuff + 0x7fff);
35   return *(long double *) (gstuff + 0x7fff);
36 }