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