1 /* PR target/63618 */
2 /* { dg-do run } */
3 /* { dg-options "-O2 -mtune=corei7 -fno-inline" } */
4 /* { dg-additional-options "-msse4.2" { target sse4 } } */
5 /* { dg-additional-options "-fpic" { target fpic } } */
6 
7 static const __float128 cf = 0.1E+10Q;
8 
9 __float128
f128_square(__float128 x)10 f128_square(__float128 x)
11 {
12   return x * x;
13 }
14 
15 __float128
f128_p3(__float128 x)16 f128_p3(__float128 x)
17 {
18   return x * x * x;
19 }
20 
21 __float128
cond_f128_square(__float128 x,int p)22 cond_f128_square (__float128 x, int p)
23 {
24   x = f128_p3 (x);
25   if (p)
26     x = f128_square(cf);
27   return x;
28 }
29 
main()30 int main()
31 {
32   __float128 x = cond_f128_square (cf, 1);
33   return (int)(x < cf);
34 }
35