OSDN Git Service

* gcc.target/sh/mfmovd.c: Extend list of supported targets.
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.target / sparc / 20001101-1.c
1 /* { dg-do run } */
2 /* { dg-require-effective-target ultrasparc_hw } */
3 /* { dg-options "-O2 -mcpu=ultrasparc -mvis" } */
4
5 extern void abort (void);
6 extern void exit (int);
7
8 int foo(double a, int b, int c, double *d, int h)
9 {
10   int f, g;
11   double e;
12
13 l:
14   f = (int) a;
15   a -= (double) f;
16   if (b == 1)
17     {
18       g = c;
19       f += g;
20       c -= g;
21     }
22   if (b == 2)
23     {
24       f++;
25       h = c;
26     }
27   if (!h)
28     {
29       for (g = 0; g <= 10; g++)
30         for (h = 0; h <= 10; h++)
31           e += d [10 + g - h];
32       goto l;
33     }
34   return f & 7;
35 }
36
37 int main()
38 {
39   if (foo(0.1, 1, 3, 0, 1) != 3)
40     abort ();
41   exit (0);
42 }