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
7static const __float128 cf = 0.1E+10Q;
8
9__float128
10f128_square(__float128 x)
11{
12  return x * x;
13}
14
15__float128
16f128_p3(__float128 x)
17{
18  return x * x * x;
19}
20
21__float128
22cond_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
30int main()
31{
32  __float128 x = cond_f128_square (cf, 1);
33  return (int)(x < cf);
34}
35