OSDN Git Service

gcc/
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / g++.old-deja / g++.other / regstack.C
1 // { dg-do run { target i?86-*-* x86_64-*-* } }
2 // { dg-options "-O2" }
3
4 inline double foo (double x)
5 {
6   register double r;
7   asm volatile ("fsqrt" : "=t" (r) : "0" (x));
8   return r;
9 }
10
11 struct X
12 {
13   ~X() {}
14 };
15
16 int b;
17
18 double bar (X x)
19 {
20   if (b)
21     return 1.0;
22   return 36.0 * foo (36.0);
23 }
24
25 int main ()
26 {
27   X x;
28   if (bar (x) != 216.0)
29     return 1;
30   return 0;
31 }