long double test(long double x0, long double x1, long double x2, long double x3,
                 long double x4, long double x5, long double x6, long double x7,
                 long double x8, long double x9, long double x10,
                 long double x11, long double x12, long double x13,
                 long double x14, long double x15) {
  while (x15 < 1E+30) {
    x0 = ((x1) < (x2) ? (x3) : 0);
    x1 = ((x2) < (x3) ? (x4) : 0) + 1;
    x2 = ((x3) < (x4) ? (x5) : 0) + 2;
    x3 = ((x4) < (x5) ? (x6) : 0) + 3;
    x4 = ((x5) < (x6) ? (x7) : 0) + 4;
    x5 = ((x6) < (x7) ? (x8) : 0) + 5;
    x6 = ((x7) < (x8) ? (x9) : 0) + 6;
    x7 = ((x8) < (x9) ? (x10) : 0) + 7;
    x8 = ((x9) < (x10) ? (x11) : 0) + 8;
    x9 = ((x10) < (x11) ? (x12) : 0) + 9;
    x10 = ((x11) < (x12) ? (x13) : 0) + 10;
    x11 = ((x12) < (x13) ? (x14) : 0) + 11;
    x12 = ((x13) < (x14) ? (x15) : 0) + 12;
    x13 = ((x14) < (x15) ? (x0) : 0) + 13;
    x14 = ((x15) < (x0) ? (x1) : 0) + 14;
    x15 = ((x0) < (x1) ? (x2) : 0) + 15;
  }
  return x15;
}


x86 assembly (clang, -O0):
<test>:
push   %rbp
mov    %rsp,%rbp
sub    $0x1b0,%rsp
fldt   0x100(%rbp)
fstpt  -0x10c(%rbp)
fldt   0xf0(%rbp)
fldt   0xe0(%rbp)
fldt   0xd0(%rbp)
fldt   0xc0(%rbp)
fldt   0xb0(%rbp)
fldt   0xa0(%rbp)
fldt   0x90(%rbp)
fstpt  -0x118(%rbp)
fldt   0x80(%rbp)
fstpt  -0x124(%rbp)
fldt   0x70(%rbp)
fstpt  -0x130(%rbp)
fldt   0x60(%rbp)
fstpt  -0x13c(%rbp)
fldt   0x50(%rbp)
fstpt  -0x148(%rbp)
fldt   0x40(%rbp)
fstpt  -0x154(%rbp)
fldt   0x30(%rbp)
fstpt  -0x160(%rbp)
fldt   0x20(%rbp)
fstpt  -0x16c(%rbp)
fldt   0x10(%rbp)
fstpt  -0x10(%rbp)
fldt   -0x16c(%rbp)
fstpt  -0x20(%rbp)
fldt   -0x160(%rbp)
fstpt  -0x30(%rbp)
fldt   -0x154(%rbp)
fstpt  -0x40(%rbp)
fldt   -0x148(%rbp)
fstpt  -0x50(%rbp)
fldt   -0x13c(%rbp)
fstpt  -0x60(%rbp)
fldt   -0x130(%rbp)
fstpt  -0x70(%rbp)
fldt   -0x124(%rbp)
fstpt  -0x80(%rbp)
fldt   -0x118(%rbp)
fstpt  -0x90(%rbp)
fldt   -0x10c(%rbp)
fxch   %st(1)
fstpt  -0xa0(%rbp)
fxch   %st(1)
fstpt  -0xb0(%rbp)
fxch   %st(1)
fstpt  -0xc0(%rbp)
fxch   %st(1)
fstpt  -0xd0(%rbp)
fxch   %st(1)
fstpt  -0xe0(%rbp)
fxch   %st(1)
fstpt  -0xf0(%rbp)
fstpt  -0x100(%rbp)
fldt   -0x100(%rbp)
fldl   0xdde(%rip)
fucomip %st(1),%st
fstp   %st(0)
jbe    169a <test+0x59a>
jmp    1231 <test+0x131>
fldt   -0x20(%rbp)
fldt   -0x30(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    1254 <test+0x154>
jmp    1246 <test+0x146>
fldt   -0x40(%rbp)
fstpt  -0x178(%rbp)
jmp    1261 <test+0x161>
fldz
fstpt  -0x178(%rbp)
jmp    1261 <test+0x161>
fldt   -0x178(%rbp)
fstpt  -0x10(%rbp)
fldt   -0x30(%rbp)
fldt   -0x40(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    128d <test+0x18d>
jmp    127f <test+0x17f>
fldt   -0x50(%rbp)
fstpt  -0x184(%rbp)
jmp    129a <test+0x19a>
fldz
fstpt  -0x184(%rbp)
jmp    129a <test+0x19a>
fldt   -0x184(%rbp)
fld1
faddp  %st,%st(1)
fstpt  -0x20(%rbp)
fldt   -0x40(%rbp)
fldt   -0x50(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    12ca <test+0x1ca>
jmp    12bc <test+0x1bc>
fldt   -0x60(%rbp)
fstpt  -0x190(%rbp)
jmp    12d7 <test+0x1d7>
fldz
fstpt  -0x190(%rbp)
jmp    12d7 <test+0x1d7>
fldt   -0x190(%rbp)
flds   0xd25(%rip)
faddp  %st,%st(1)
fstpt  -0x30(%rbp)
fldt   -0x50(%rbp)
fldt   -0x60(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    130b <test+0x20b>
jmp    12fd <test+0x1fd>
fldt   -0x70(%rbp)
fstpt  -0x19c(%rbp)
jmp    1318 <test+0x218>
fldz
fstpt  -0x19c(%rbp)
jmp    1318 <test+0x218>
fldt   -0x19c(%rbp)
flds   0xce8(%rip)
faddp  %st,%st(1)
fstpt  -0x40(%rbp)
fldt   -0x60(%rbp)
fldt   -0x70(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    134c <test+0x24c>
jmp    133e <test+0x23e>
fldt   -0x80(%rbp)
fstpt  -0x1a8(%rbp)
jmp    1359 <test+0x259>
fldz
fstpt  -0x1a8(%rbp)
jmp    1359 <test+0x259>
fldt   -0x1a8(%rbp)
flds   0xcab(%rip)
faddp  %st,%st(1)
fstpt  -0x50(%rbp)
fldt   -0x70(%rbp)
fldt   -0x80(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    1390 <test+0x290>
jmp    137f <test+0x27f>
fldt   -0x90(%rbp)
fstpt  -0x1b4(%rbp)
jmp    139d <test+0x29d>
fldz
fstpt  -0x1b4(%rbp)
jmp    139d <test+0x29d>
fldt   -0x1b4(%rbp)
flds   0xc6b(%rip)
faddp  %st,%st(1)
fstpt  -0x60(%rbp)
fldt   -0x80(%rbp)
fldt   -0x90(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    13d7 <test+0x2d7>
jmp    13c6 <test+0x2c6>
fldt   -0xa0(%rbp)
fstpt  -0x1c0(%rbp)
jmp    13e4 <test+0x2e4>
fldz
fstpt  -0x1c0(%rbp)
jmp    13e4 <test+0x2e4>
fldt   -0x1c0(%rbp)
flds   0xc28(%rip)
faddp  %st,%st(1)
fstpt  -0x70(%rbp)
fldt   -0x90(%rbp)
fldt   -0xa0(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    1421 <test+0x321>
jmp    1410 <test+0x310>
fldt   -0xb0(%rbp)
fstpt  -0x1cc(%rbp)
jmp    142e <test+0x32e>
fldz
fstpt  -0x1cc(%rbp)
jmp    142e <test+0x32e>
fldt   -0x1cc(%rbp)
flds   0xbe2(%rip)
faddp  %st,%st(1)
fstpt  -0x80(%rbp)
fldt   -0xa0(%rbp)
fldt   -0xb0(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    146b <test+0x36b>
jmp    145a <test+0x35a>
fldt   -0xc0(%rbp)
fstpt  -0x1d8(%rbp)
jmp    1478 <test+0x378>
fldz
fstpt  -0x1d8(%rbp)
jmp    1478 <test+0x378>
fldt   -0x1d8(%rbp)
flds   0xb9c(%rip)
faddp  %st,%st(1)
fstpt  -0x90(%rbp)
fldt   -0xb0(%rbp)
fldt   -0xc0(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    14b8 <test+0x3b8>
jmp    14a7 <test+0x3a7>
fldt   -0xd0(%rbp)
fstpt  -0x1e4(%rbp)
jmp    14c5 <test+0x3c5>
fldz
fstpt  -0x1e4(%rbp)
jmp    14c5 <test+0x3c5>
fldt   -0x1e4(%rbp)
flds   0xb53(%rip)
faddp  %st,%st(1)
fstpt  -0xa0(%rbp)
fldt   -0xc0(%rbp)
fldt   -0xd0(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    1505 <test+0x405>
jmp    14f4 <test+0x3f4>
fldt   -0xe0(%rbp)
fstpt  -0x1f0(%rbp)
jmp    1512 <test+0x412>
fldz
fstpt  -0x1f0(%rbp)
jmp    1512 <test+0x412>
fldt   -0x1f0(%rbp)
flds   0xb0a(%rip)
faddp  %st,%st(1)
fstpt  -0xb0(%rbp)
fldt   -0xd0(%rbp)
fldt   -0xe0(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    1552 <test+0x452>
jmp    1541 <test+0x441>
fldt   -0xf0(%rbp)
fstpt  -0x1fc(%rbp)
jmp    155f <test+0x45f>
fldz
fstpt  -0x1fc(%rbp)
jmp    155f <test+0x45f>
fldt   -0x1fc(%rbp)
flds   0xac1(%rip)
faddp  %st,%st(1)
fstpt  -0xc0(%rbp)
fldt   -0xe0(%rbp)
fldt   -0xf0(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    159f <test+0x49f>
jmp    158e <test+0x48e>
fldt   -0x100(%rbp)
fstpt  -0x208(%rbp)
jmp    15ac <test+0x4ac>
fldz
fstpt  -0x208(%rbp)
jmp    15ac <test+0x4ac>
fldt   -0x208(%rbp)
flds   0xa78(%rip)
faddp  %st,%st(1)
fstpt  -0xd0(%rbp)
fldt   -0xf0(%rbp)
fldt   -0x100(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    15e9 <test+0x4e9>
jmp    15db <test+0x4db>
fldt   -0x10(%rbp)
fstpt  -0x214(%rbp)
jmp    15f6 <test+0x4f6>
fldz
fstpt  -0x214(%rbp)
jmp    15f6 <test+0x4f6>
fldt   -0x214(%rbp)
flds   0xa32(%rip)
faddp  %st,%st(1)
fstpt  -0xe0(%rbp)
fldt   -0x100(%rbp)
fldt   -0x10(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    1630 <test+0x530>
jmp    1622 <test+0x522>
fldt   -0x20(%rbp)
fstpt  -0x220(%rbp)
jmp    163d <test+0x53d>
fldz
fstpt  -0x220(%rbp)
jmp    163d <test+0x53d>
fldt   -0x220(%rbp)
flds   0x9ef(%rip)
faddp  %st,%st(1)
fstpt  -0xf0(%rbp)
fldt   -0x10(%rbp)
fldt   -0x20(%rbp)
fucomip %st(1),%st
fstp   %st(0)
jbe    1674 <test+0x574>
jmp    1666 <test+0x566>
fldt   -0x30(%rbp)
fstpt  -0x22c(%rbp)
jmp    1681 <test+0x581>
fldz
fstpt  -0x22c(%rbp)
jmp    1681 <test+0x581>
fldt   -0x22c(%rbp)
flds   0x9af(%rip)
faddp  %st,%st(1)
fstpt  -0x100(%rbp)
jmp    1216 <test+0x116>
fldt   -0x100(%rbp)
add    $0x1b0,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<test>:
sub    $0xd8,%rsp
fldt   0x1d0(%rsp)
fldt   0x1c0(%rsp)
fstpt  -0xc(%rsp)
fldt   0x1b0(%rsp)
fstpt  -0x18(%rsp)
fldt   0x1a0(%rsp)
fstpt  -0x24(%rsp)
fldt   0x190(%rsp)
fstpt  0xc(%rsp)
fldt   0x180(%rsp)
fstpt  (%rsp)
fldl   0xeb6(%rip)
fld    %st(1)
fxch   %st(1)
fucomi %st(2),%st
fstp   %st(2)
fldt   0x170(%rsp)
fstpt  -0x48(%rsp)
fldt   0x160(%rsp)
fldt   0x150(%rsp)
fstpt  -0x78(%rsp)
fldt   0x140(%rsp)
fldt   0x130(%rsp)
fldt   0x120(%rsp)
fstpt  -0x30(%rsp)
fldt   0x110(%rsp)
fldt   0x100(%rsp)
fstpt  -0x54(%rsp)
fldt   0xf0(%rsp)
fstpt  -0x3c(%rsp)
jbe    147f <test+0x37f>
fxch   %st(3)
fstpt  0x18(%rsp)
flds   0xe51(%rip)
fstpt  0xcc(%rsp)
flds   0xe48(%rip)
fstpt  0xc0(%rsp)
flds   0xe3f(%rip)
fstpt  0xb4(%rsp)
flds   0xe36(%rip)
fstpt  0xa8(%rsp)
flds   0xe2d(%rip)
fstpt  0x9c(%rsp)
flds   0xe24(%rip)
fstpt  0x90(%rsp)
flds   0xe1b(%rip)
fstpt  0x84(%rsp)
flds   0xe12(%rip)
fstpt  0x78(%rsp)
flds   0xe0c(%rip)
fstpt  0x6c(%rsp)
flds   0xe06(%rip)
fstpt  0x60(%rsp)
flds   0xe00(%rip)
fstpt  0x54(%rsp)
flds   0xdfa(%rip)
fstpt  0x48(%rsp)
flds   0xdf4(%rip)
fstpt  0x3c(%rsp)
flds   0xdee(%rip)
fstpt  0x30(%rsp)
fldt   -0xc(%rsp)
fstp   %st(0)
fldt   -0x18(%rsp)
fldt   -0x24(%rsp)
fstp   %st(0)
fxch   %st(5)
fstpt  0x24(%rsp)
fldt   0xc(%rsp)
fstp   %st(0)
fldt   (%rsp)
fstp   %st(0)
fldt   -0x78(%rsp)
fstp   %st(0)
fxch   %st(1)
fstpt  -0x60(%rsp)
fstpt  -0x6c(%rsp)
fldt   -0x30(%rsp)
fldt   -0x3c(%rsp)
fldt   -0x54(%rsp)
nop
fxch   %st(5)
fstpt  -0x18(%rsp)
fxch   %st(4)
fucomi %st(4),%st
fstp   %st(4)
fldz
fcmovnbe %st(2),%st
fstpt  -0x3c(%rsp)
fxch   %st(1)
fucomi %st(3),%st
fstp   %st(3)
fld1
fldt   -0x48(%rsp)
fstpt  -0x48(%rsp)
fld    %st(1)
fadd   %st(1),%st
fxch   %st(1)
fcmovnbe %st(1),%st
fstp   %st(1)
fxch   %st(1)
fucomi %st(3),%st
fstp   %st(3)
fldt   0xcc(%rsp)
fldt   -0x6c(%rsp)
fld    %st(0)
fadd   %st(2),%st
fxch   %st(2)
fcmovnbe %st(2),%st
fstp   %st(2)
fxch   %st(1)
fstpt  -0x54(%rsp)
fucomi %st(3),%st
fstp   %st(3)
fldt   0xc0(%rsp)
fldt   -0x60(%rsp)
fld    %st(0)
fadd   %st(2),%st
fxch   %st(2)
fcmovnbe %st(2),%st
fstp   %st(2)
fxch   %st(1)
fstpt  -0x30(%rsp)
fucomi %st(3),%st
fstp   %st(3)
fldt   0xb4(%rsp)
fldt   -0x78(%rsp)
fld    %st(0)
fadd   %st(2),%st
fstpt  -0x6c(%rsp)
fldt   -0x6c(%rsp)
fxch   %st(2)
fcmovnbe %st(2),%st
fstp   %st(2)
fucomi %st(4),%st
fstp   %st(4)
fldt   0xa8(%rsp)
fldt   0x18(%rsp)
fld    %st(0)
fadd   %st(2),%st
fstpt  -0x60(%rsp)
fldt   -0x60(%rsp)
fxch   %st(2)
fcmovnbe %st(2),%st
fstp   %st(2)
fldt   -0x54(%rsp)
fstp   %st(0)
fxch   %st(1)
fstpt  -0x6c(%rsp)
fucomi %st(4),%st
fstp   %st(4)
fldt   0x9c(%rsp)
fldt   -0x48(%rsp)
fld    %st(0)
fadd   %st(2),%st
fstpt  -0x78(%rsp)
fldt   -0x78(%rsp)
fxch   %st(2)
fcmovnbe %st(2),%st
fstp   %st(2)
fxch   %st(1)
fstpt  -0x60(%rsp)
fucomi %st(4),%st
fstp   %st(4)
fldt   0x90(%rsp)
fldt   (%rsp)
fld    %st(0)
fadd   %st(2),%st
fxch   %st(2)
fcmovnbe %st(2),%st
fstp   %st(2)
fxch   %st(1)
fstpt  -0x78(%rsp)
fucomi %st(4),%st
fstp   %st(4)
fldt   0x84(%rsp)
fldt   0xc(%rsp)
fld    %st(0)
fadd   %st(2),%st
fxch   %st(2)
fcmovnbe %st(2),%st
fstp   %st(2)
fxch   %st(1)
fstpt  0x18(%rsp)
fucomi %st(4),%st
fstp   %st(4)
fldt   0x78(%rsp)
fldt   -0x24(%rsp)
fld    %st(0)
fadd   %st(2),%st
fxch   %st(2)
fcmovnbe %st(2),%st
fstp   %st(2)
fxch   %st(1)
fstpt  -0x48(%rsp)
fucomi %st(4),%st
fstp   %st(4)
fldt   0x6c(%rsp)
fldt   -0x18(%rsp)
fld    %st(0)
fadd   %st(2),%st
fxch   %st(2)
fcmovnbe %st(2),%st
fstp   %st(2)
fxch   %st(1)
fstpt  (%rsp)
fucomi %st(4),%st
fstp   %st(4)
fldt   0x60(%rsp)
fldt   -0xc(%rsp)
fld    %st(0)
fadd   %st(2),%st
fxch   %st(2)
fcmovnbe %st(2),%st
fstp   %st(2)
fxch   %st(1)
fstpt  0xc(%rsp)
fucomi %st(4),%st
fstp   %st(4)
fldt   0x54(%rsp)
fld    %st(3)
fadd   %st(1),%st
fxch   %st(1)
fcmovnbe %st(1),%st
fstp   %st(1)
fstpt  -0x24(%rsp)
fxch   %st(2)
fucomi %st(3),%st
fstp   %st(3)
fldt   0x48(%rsp)
fldt   -0x3c(%rsp)
fld    %st(0)
fadd   %st(2),%st
fxch   %st(2)
fcmovnbe %st(2),%st
fstp   %st(2)
fucomi %st(4),%st
fstp   %st(4)
fldt   0x3c(%rsp)
fld    %st(2)
fadd   %st(1),%st
fxch   %st(1)
fcmovnbe %st(1),%st
fstp   %st(1)
fstpt  -0xc(%rsp)
fxch   %st(1)
fucomi %st(3),%st
fstp   %st(3)
fldt   0x30(%rsp)
fldt   -0x54(%rsp)
fld    %st(0)
fxch   %st(1)
fadd   %st(2),%st
fxch   %st(2)
fcmovnbe %st(2),%st
fstp   %st(2)
fldt   0x24(%rsp)
fucomip %st(2),%st
fldt   -0x30(%rsp)
fxch   %st(3)
fxch   %st(5)
fxch   %st(2)
fxch   %st(4)
fxch   %st(2)
fxch   %st(1)
ja     1290 <test+0x190>
jmp    14a1 <test+0x3a1>
fstp   %st(3)
fstp   %st(4)
fstp   %st(1)
fstp   %st(0)
fstp   %st(1)
fldz
fldz
fldz
fldz
fldz
fxch   %st(3)
fxch   %st(5)
fxch   %st(4)
fxch   %st(2)
fxch   %st(3)
fxch   %st(1)
fxch   %st(2)
fstp   %st(0)
fstp   %st(4)
fstp   %st(1)
fstp   %st(0)
fstp   %st(1)
add    $0xd8,%rsp
ret

LLVM IR (-O0):
define x86_fp80 @test(x86_fp80 %0, x86_fp80 %1, x86_fp80 %2, x86_fp80 %3, x86_fp80 %4, x86_fp80 %5, x86_fp80 %6, x86_fp80 %7, x86_fp80 %8, x86_fp80 %9, x86_fp80 %10, x86_fp80 %11, x86_fp80 %12, x86_fp80 %13, x86_fp80 %14, x86_fp80 %15) {
%17 = alloca x86_fp80
%18 = alloca x86_fp80
%19 = alloca x86_fp80
%20 = alloca x86_fp80
%21 = alloca x86_fp80
%22 = alloca x86_fp80
%23 = alloca x86_fp80
%24 = alloca x86_fp80
%25 = alloca x86_fp80
%26 = alloca x86_fp80
%27 = alloca x86_fp80
%28 = alloca x86_fp80
%29 = alloca x86_fp80
%30 = alloca x86_fp80
%31 = alloca x86_fp80
%32 = alloca x86_fp80
store x86_fp80 %0, x86_fp80* %17
store x86_fp80 %1, x86_fp80* %18
store x86_fp80 %2, x86_fp80* %19
store x86_fp80 %3, x86_fp80* %20
store x86_fp80 %4, x86_fp80* %21
store x86_fp80 %5, x86_fp80* %22
store x86_fp80 %6, x86_fp80* %23
store x86_fp80 %7, x86_fp80* %24
store x86_fp80 %8, x86_fp80* %25
store x86_fp80 %9, x86_fp80* %26
store x86_fp80 %10, x86_fp80* %27
store x86_fp80 %11, x86_fp80* %28
store x86_fp80 %12, x86_fp80* %29
store x86_fp80 %13, x86_fp80* %30
store x86_fp80 %14, x86_fp80* %31
store x86_fp80 %15, x86_fp80* %32
br label %33
33: ; preds = %177, %16
%34 = load x86_fp80, x86_fp80* %32
%35 = fcmp olt x86_fp80 %34, 0xK4062C9F2C9CD04675000
br i1 %35, label %36, label %180
36: ; preds = %33
%37 = load x86_fp80, x86_fp80* %18
%38 = load x86_fp80, x86_fp80* %19
%39 = fcmp olt x86_fp80 %37, %38
br i1 %39, label %40, label %42
40: ; preds = %36
%41 = load x86_fp80, x86_fp80* %20
br label %43
42: ; preds = %36
br label %43
43: ; preds = %42, %40
%44 = phi x86_fp80 [ %41, %40 ], [ 0xK00000000000000000000, %42 ]
store x86_fp80 %44, x86_fp80* %17
%45 = load x86_fp80, x86_fp80* %19
%46 = load x86_fp80, x86_fp80* %20
%47 = fcmp olt x86_fp80 %45, %46
br i1 %47, label %48, label %50
48: ; preds = %43
%49 = load x86_fp80, x86_fp80* %21
br label %51
50: ; preds = %43
br label %51
51: ; preds = %50, %48
%52 = phi x86_fp80 [ %49, %48 ], [ 0xK00000000000000000000, %50 ]
%53 = fadd x86_fp80 %52, 0xK3FFF8000000000000000
store x86_fp80 %53, x86_fp80* %18
%54 = load x86_fp80, x86_fp80* %20
%55 = load x86_fp80, x86_fp80* %21
%56 = fcmp olt x86_fp80 %54, %55
br i1 %56, label %57, label %59
57: ; preds = %51
%58 = load x86_fp80, x86_fp80* %22
br label %60
59: ; preds = %51
br label %60
60: ; preds = %59, %57
%61 = phi x86_fp80 [ %58, %57 ], [ 0xK00000000000000000000, %59 ]
%62 = fadd x86_fp80 %61, 0xK40008000000000000000
store x86_fp80 %62, x86_fp80* %19
%63 = load x86_fp80, x86_fp80* %21
%64 = load x86_fp80, x86_fp80* %22
%65 = fcmp olt x86_fp80 %63, %64
br i1 %65, label %66, label %68
66: ; preds = %60
%67 = load x86_fp80, x86_fp80* %23
br label %69
68: ; preds = %60
br label %69
69: ; preds = %68, %66
%70 = phi x86_fp80 [ %67, %66 ], [ 0xK00000000000000000000, %68 ]
%71 = fadd x86_fp80 %70, 0xK4000C000000000000000
store x86_fp80 %71, x86_fp80* %20
%72 = load x86_fp80, x86_fp80* %22
%73 = load x86_fp80, x86_fp80* %23
%74 = fcmp olt x86_fp80 %72, %73
br i1 %74, label %75, label %77
75: ; preds = %69
%76 = load x86_fp80, x86_fp80* %24
br label %78
77: ; preds = %69
br label %78
78: ; preds = %77, %75
%79 = phi x86_fp80 [ %76, %75 ], [ 0xK00000000000000000000, %77 ]
%80 = fadd x86_fp80 %79, 0xK40018000000000000000
store x86_fp80 %80, x86_fp80* %21
%81 = load x86_fp80, x86_fp80* %23
%82 = load x86_fp80, x86_fp80* %24
%83 = fcmp olt x86_fp80 %81, %82
br i1 %83, label %84, label %86
84: ; preds = %78
%85 = load x86_fp80, x86_fp80* %25
br label %87
86: ; preds = %78
br label %87
87: ; preds = %86, %84
%88 = phi x86_fp80 [ %85, %84 ], [ 0xK00000000000000000000, %86 ]
%89 = fadd x86_fp80 %88, 0xK4001A000000000000000
store x86_fp80 %89, x86_fp80* %22
%90 = load x86_fp80, x86_fp80* %24
%91 = load x86_fp80, x86_fp80* %25
%92 = fcmp olt x86_fp80 %90, %91
br i1 %92, label %93, label %95
93: ; preds = %87
%94 = load x86_fp80, x86_fp80* %26
br label %96
95: ; preds = %87
br label %96
96: ; preds = %95, %93
%97 = phi x86_fp80 [ %94, %93 ], [ 0xK00000000000000000000, %95 ]
%98 = fadd x86_fp80 %97, 0xK4001C000000000000000
store x86_fp80 %98, x86_fp80* %23
%99 = load x86_fp80, x86_fp80* %25
%100 = load x86_fp80, x86_fp80* %26
%101 = fcmp olt x86_fp80 %99, %100
br i1 %101, label %102, label %104
102: ; preds = %96
%103 = load x86_fp80, x86_fp80* %27
br label %105
104: ; preds = %96
br label %105
105: ; preds = %104, %102
%106 = phi x86_fp80 [ %103, %102 ], [ 0xK00000000000000000000, %104 ]
%107 = fadd x86_fp80 %106, 0xK4001E000000000000000
store x86_fp80 %107, x86_fp80* %24
%108 = load x86_fp80, x86_fp80* %26
%109 = load x86_fp80, x86_fp80* %27
%110 = fcmp olt x86_fp80 %108, %109
br i1 %110, label %111, label %113
111: ; preds = %105
%112 = load x86_fp80, x86_fp80* %28
br label %114
113: ; preds = %105
br label %114
114: ; preds = %113, %111
%115 = phi x86_fp80 [ %112, %111 ], [ 0xK00000000000000000000, %113 ]
%116 = fadd x86_fp80 %115, 0xK40028000000000000000
store x86_fp80 %116, x86_fp80* %25
%117 = load x86_fp80, x86_fp80* %27
%118 = load x86_fp80, x86_fp80* %28
%119 = fcmp olt x86_fp80 %117, %118
br i1 %119, label %120, label %122
120: ; preds = %114
%121 = load x86_fp80, x86_fp80* %29
br label %123
122: ; preds = %114
br label %123
123: ; preds = %122, %120
%124 = phi x86_fp80 [ %121, %120 ], [ 0xK00000000000000000000, %122 ]
%125 = fadd x86_fp80 %124, 0xK40029000000000000000
store x86_fp80 %125, x86_fp80* %26
%126 = load x86_fp80, x86_fp80* %28
%127 = load x86_fp80, x86_fp80* %29
%128 = fcmp olt x86_fp80 %126, %127
br i1 %128, label %129, label %131
129: ; preds = %123
%130 = load x86_fp80, x86_fp80* %30
br label %132
131: ; preds = %123
br label %132
132: ; preds = %131, %129
%133 = phi x86_fp80 [ %130, %129 ], [ 0xK00000000000000000000, %131 ]
%134 = fadd x86_fp80 %133, 0xK4002A000000000000000
store x86_fp80 %134, x86_fp80* %27
%135 = load x86_fp80, x86_fp80* %29
%136 = load x86_fp80, x86_fp80* %30
%137 = fcmp olt x86_fp80 %135, %136
br i1 %137, label %138, label %140
138: ; preds = %132
%139 = load x86_fp80, x86_fp80* %31
br label %141
140: ; preds = %132
br label %141
141: ; preds = %140, %138
%142 = phi x86_fp80 [ %139, %138 ], [ 0xK00000000000000000000, %140 ]
%143 = fadd x86_fp80 %142, 0xK4002B000000000000000
store x86_fp80 %143, x86_fp80* %28
%144 = load x86_fp80, x86_fp80* %30
%145 = load x86_fp80, x86_fp80* %31
%146 = fcmp olt x86_fp80 %144, %145
br i1 %146, label %147, label %149
147: ; preds = %141
%148 = load x86_fp80, x86_fp80* %32
br label %150
149: ; preds = %141
br label %150
150: ; preds = %149, %147
%151 = phi x86_fp80 [ %148, %147 ], [ 0xK00000000000000000000, %149 ]
%152 = fadd x86_fp80 %151, 0xK4002C000000000000000
store x86_fp80 %152, x86_fp80* %29
%153 = load x86_fp80, x86_fp80* %31
%154 = load x86_fp80, x86_fp80* %32
%155 = fcmp olt x86_fp80 %153, %154
br i1 %155, label %156, label %158
156: ; preds = %150
%157 = load x86_fp80, x86_fp80* %17
br label %159
158: ; preds = %150
br label %159
159: ; preds = %158, %156
%160 = phi x86_fp80 [ %157, %156 ], [ 0xK00000000000000000000, %158 ]
%161 = fadd x86_fp80 %160, 0xK4002D000000000000000
store x86_fp80 %161, x86_fp80* %30
%162 = load x86_fp80, x86_fp80* %32
%163 = load x86_fp80, x86_fp80* %17
%164 = fcmp olt x86_fp80 %162, %163
br i1 %164, label %165, label %167
165: ; preds = %159
%166 = load x86_fp80, x86_fp80* %18
br label %168
167: ; preds = %159
br label %168
168: ; preds = %167, %165
%169 = phi x86_fp80 [ %166, %165 ], [ 0xK00000000000000000000, %167 ]
%170 = fadd x86_fp80 %169, 0xK4002E000000000000000
store x86_fp80 %170, x86_fp80* %31
%171 = load x86_fp80, x86_fp80* %17
%172 = load x86_fp80, x86_fp80* %18
%173 = fcmp olt x86_fp80 %171, %172
br i1 %173, label %174, label %176
174: ; preds = %168
%175 = load x86_fp80, x86_fp80* %19
br label %177
176: ; preds = %168
br label %177
177: ; preds = %176, %174
%178 = phi x86_fp80 [ %175, %174 ], [ 0xK00000000000000000000, %176 ]
%179 = fadd x86_fp80 %178, 0xK4002F000000000000000
store x86_fp80 %179, x86_fp80* %32
br label %33
180: ; preds = %33
%181 = load x86_fp80, x86_fp80* %32
ret x86_fp80 %181
}

LLVM IR (-O2):
define x86_fp80 @test(x86_fp80 %0, x86_fp80 %1, x86_fp80 %2, x86_fp80 %3, x86_fp80 %4, x86_fp80 %5, x86_fp80 %6, x86_fp80 %7, x86_fp80 %8, x86_fp80 %9, x86_fp80 %10, x86_fp80 %11, x86_fp80 %12, x86_fp80 %13, x86_fp80 %14, x86_fp80 %15) {
%17 = fcmp olt x86_fp80 %15, 0xK4062C9F2C9CD04675000
br i1 %17, label %18, label %82
18: ; preds = %16, %18
%19 = phi x86_fp80 [ %80, %18 ], [ %15, %16 ]
%20 = phi x86_fp80 [ %77, %18 ], [ %14, %16 ]
%21 = phi x86_fp80 [ %74, %18 ], [ %13, %16 ]
%22 = phi x86_fp80 [ %71, %18 ], [ %12, %16 ]
%23 = phi x86_fp80 [ %68, %18 ], [ %11, %16 ]
%24 = phi x86_fp80 [ %65, %18 ], [ %10, %16 ]
%25 = phi x86_fp80 [ %62, %18 ], [ %9, %16 ]
%26 = phi x86_fp80 [ %59, %18 ], [ %8, %16 ]
%27 = phi x86_fp80 [ %56, %18 ], [ %7, %16 ]
%28 = phi x86_fp80 [ %53, %18 ], [ %6, %16 ]
%29 = phi x86_fp80 [ %50, %18 ], [ %5, %16 ]
%30 = phi x86_fp80 [ %47, %18 ], [ %4, %16 ]
%31 = phi x86_fp80 [ %44, %18 ], [ %3, %16 ]
%32 = phi x86_fp80 [ %41, %18 ], [ %2, %16 ]
%33 = phi x86_fp80 [ %38, %18 ], [ %1, %16 ]
%34 = fcmp olt x86_fp80 %33, %32
%35 = select i1 %34, x86_fp80 %31, x86_fp80 0xK00000000000000000000
%36 = fcmp olt x86_fp80 %32, %31
%37 = fadd x86_fp80 %30, 0xK3FFF8000000000000000
%38 = select i1 %36, x86_fp80 %37, x86_fp80 0xK3FFF8000000000000000
%39 = fcmp olt x86_fp80 %31, %30
%40 = fadd x86_fp80 %29, 0xK40008000000000000000
%41 = select i1 %39, x86_fp80 %40, x86_fp80 0xK40008000000000000000
%42 = fcmp olt x86_fp80 %30, %29
%43 = fadd x86_fp80 %28, 0xK4000C000000000000000
%44 = select i1 %42, x86_fp80 %43, x86_fp80 0xK4000C000000000000000
%45 = fcmp olt x86_fp80 %29, %28
%46 = fadd x86_fp80 %27, 0xK40018000000000000000
%47 = select i1 %45, x86_fp80 %46, x86_fp80 0xK40018000000000000000
%48 = fcmp olt x86_fp80 %28, %27
%49 = fadd x86_fp80 %26, 0xK4001A000000000000000
%50 = select i1 %48, x86_fp80 %49, x86_fp80 0xK4001A000000000000000
%51 = fcmp olt x86_fp80 %27, %26
%52 = fadd x86_fp80 %25, 0xK4001C000000000000000
%53 = select i1 %51, x86_fp80 %52, x86_fp80 0xK4001C000000000000000
%54 = fcmp olt x86_fp80 %26, %25
%55 = fadd x86_fp80 %24, 0xK4001E000000000000000
%56 = select i1 %54, x86_fp80 %55, x86_fp80 0xK4001E000000000000000
%57 = fcmp olt x86_fp80 %25, %24
%58 = fadd x86_fp80 %23, 0xK40028000000000000000
%59 = select i1 %57, x86_fp80 %58, x86_fp80 0xK40028000000000000000
%60 = fcmp olt x86_fp80 %24, %23
%61 = fadd x86_fp80 %22, 0xK40029000000000000000
%62 = select i1 %60, x86_fp80 %61, x86_fp80 0xK40029000000000000000
%63 = fcmp olt x86_fp80 %23, %22
%64 = fadd x86_fp80 %21, 0xK4002A000000000000000
%65 = select i1 %63, x86_fp80 %64, x86_fp80 0xK4002A000000000000000
%66 = fcmp olt x86_fp80 %22, %21
%67 = fadd x86_fp80 %20, 0xK4002B000000000000000
%68 = select i1 %66, x86_fp80 %67, x86_fp80 0xK4002B000000000000000
%69 = fcmp olt x86_fp80 %21, %20
%70 = fadd x86_fp80 %19, 0xK4002C000000000000000
%71 = select i1 %69, x86_fp80 %70, x86_fp80 0xK4002C000000000000000
%72 = fcmp olt x86_fp80 %20, %19
%73 = fadd x86_fp80 %35, 0xK4002D000000000000000
%74 = select i1 %72, x86_fp80 %73, x86_fp80 0xK4002D000000000000000
%75 = fcmp olt x86_fp80 %19, %35
%76 = fadd x86_fp80 %38, 0xK4002E000000000000000
%77 = select i1 %75, x86_fp80 %76, x86_fp80 0xK4002E000000000000000
%78 = fcmp olt x86_fp80 %35, %38
%79 = fadd x86_fp80 %41, 0xK4002F000000000000000
%80 = select i1 %78, x86_fp80 %79, x86_fp80 0xK4002F000000000000000
%81 = fcmp olt x86_fp80 %80, 0xK4062C9F2C9CD04675000
br i1 %81, label %18, label %82
82: ; preds = %18, %16
%83 = phi x86_fp80 [ %15, %16 ], [ %80, %18 ]
ret x86_fp80 %83
}