OSDN Git Service

* convert.c (convert_to_integer): Convert (long)round -> lround,
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / 20001102-1.c
1 /* { dg-do run { target sparc*-*-* } } */
2 /* { dg-options "-O2 -mcpu=ultrasparc -mvis" } */
3
4 int foo(double a, int b, int c, double *d, int h)
5 {
6   int f, g;
7   double e;
8
9 l:
10   f = (int) a;
11   a -= (double) f;
12   if (b == 1)
13     {
14       g = c;
15       f += g;
16       c -= g;
17     }
18   if (b == 2)
19     {
20       f++;
21       h = c;
22       goto l;
23     }
24
25   asm volatile ("" : : :
26                 "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7",
27                 "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15",
28                 "f16", "f17", "f18", "f19", "f20", "f21", "f22", "f23",
29                 "f24", "f25", "f26", "f27", "f28", "f29", "f30", "f31");
30
31   return f & 7;
32 }
33
34 int main()
35 {
36   if (foo(0.1, 1, 3, 0, 1) != 3)
37     abort ();
38   exit (0);
39 }