1 /* { dg-do run } */
2 /* { dg-require-effective-target ia32 } */
3 /* { dg-options "-O2 -fomit-frame-pointer -fno-asynchronous-unwind-tables -mpush-args" } */
4 /* { dg-additional-options "-mno-accumulate-outgoing-args" { target { ! { *-*-mingw* *-*-cygwin* } } } } */
5 
6 void abort (void);
7 
8 void __attribute__((noinline))
f(long double a)9 f (long double a)
10 {
11   if (a != 1.23L)
12     abort ();
13 }
14 
15 int __attribute__((noinline))
g(long double b)16 g (long double b)
17 {
18   f (b);
19   return 0;
20 }
21 
22 int
main(void)23 main (void)
24 {
25   g (1.23L);
26   return 0;
27 }
28