double BinaryBarrier(int typeflag, double S, double X, double H, double K,
                     double T, double r, double b, double v, int eta, int phi) {
  assert(((S) == (S)) && (S) >= 0.000001 && (S) <= 1000000000000.0);
  assert(((X) == (X)) && (X) >= 0.000001 && (X) <= 1000000000000.0);
  assert(((T) == (T)) && (T) >= (1.0 / (253.0 * 24.0)) && (T) <= (20.0));
  {
    double result = 0.0;
    const double vsT = v * sqrt(T);
    const double ebrT = exp((b - r) * T);
    const double erT = exp(-r * T);
    const double HS = H / S;
    const double mu = (b - ((v) * (v)) / 2.0) / ((v) * (v));
    const double lambda = sqrt(((mu) * (mu)) + 2.0 * r / ((v) * (v)));
    const double X1 = log(S / X) / vsT + (mu + 1.0) * vsT;
    const double X2 = log(S / H) / vsT + (mu + 1.0) * vsT;
    const double Y1 = log(((H) * (H)) / (S * X)) / vsT + (mu + 1.0) * vsT;
    const double y2 = log(HS) / vsT + (mu + 1.0) * vsT;
    const double Z = log(HS) / vsT + lambda * vsT;
    assert(typeflag > 0 && typeflag <= 28);
    if (typeflag < 5) {
      return (K * (pow((HS), (mu + lambda)) * cnd(eta * Z) +
                   pow((HS), (mu - lambda)) *
                       cnd(eta * Z - 2.0 * eta * lambda * vsT)));
    } else if (typeflag < 7) {
      return (K * erT * cnd(phi * X2 - phi * vsT)) +
             (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * y2 - eta * vsT));
    } else if (typeflag < 9) {
      return (S * ebrT * cnd(phi * X2)) +
             (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * y2));
    } else if (typeflag < 11) {
      return (K * erT * cnd(phi * X2 - phi * vsT)) -
             (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * y2 - eta * vsT));
    } else if (typeflag < 13) {
      return (S * ebrT * cnd(phi * X2)) -
             (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * y2));
    } else if (X > H) {
      switch (typeflag) {
      case 13:
      case 14:
        return (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * Y1 - eta * vsT));
      case 15:
        return (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * Y1));
      case 16:
        return (S * ebrT * cnd(phi * X1));
      case 17:
        return (K * erT * cnd(phi * X2 - phi * vsT)) -
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * Y1 - eta * vsT)) +
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * y2 - eta * vsT));
      case 18:
        return (K * erT * cnd(phi * X1 - phi * vsT)) -
               (K * erT * cnd(phi * X2 - phi * vsT)) +
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * y2 - eta * vsT));
      case 19:
        return (S * ebrT * cnd(phi * X2)) -
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * Y1)) +
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * y2));
      case 20:
        return (S * ebrT * cnd(phi * X1)) - (S * ebrT * cnd(phi * X2)) +
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * Y1));
      case 21:
        return (K * erT * cnd(phi * X1 - phi * vsT)) -
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * Y1 - eta * vsT));
      case 22:
      case 24:
        return 0;
      case 23:
        return (S * ebrT * cnd(phi * X1)) -
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * Y1));
      case 25:
        return (K * erT * cnd(phi * X1 - phi * vsT)) -
               (K * erT * cnd(phi * X2 - phi * vsT)) +
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * Y1 - eta * vsT)) -
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * y2 - eta * vsT));
      case 26:
        return (K * erT * cnd(phi * X2 - phi * vsT)) -
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * y2 - eta * vsT));
      case 27:
        return (S * ebrT * cnd(phi * X1)) - (S * ebrT * cnd(phi * X2)) +
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * Y1)) -
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * y2));
      case 28:
        return (S * ebrT * cnd(phi * X2)) -
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * y2));
      default:
        abort();
      }
    } else if (X < H) {
      switch (typeflag) {
      case 13:
        return (K * erT * cnd(phi * X1 - phi * vsT)) -
               (K * erT * cnd(phi * X2 - phi * vsT)) +
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * y2 - eta * vsT));
      case 14:
        return (K * erT * cnd(phi * X2 - phi * vsT)) -
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * Y1 - eta * vsT)) +
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * y2 - eta * vsT));
      case 15:
        return (S * ebrT * cnd(phi * X1)) - (S * ebrT * cnd(phi * X2)) +
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * y2));
      case 16:
        return (S * ebrT * cnd(phi * X2)) -
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * Y1)) +
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * y2));
      case 17:
        return (K * erT * cnd(phi * X1 - phi * vsT));
      case 18:
        return (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * Y1 - eta * vsT));
      case 19:
        return (S * ebrT * cnd(phi * X1));
      case 20:
        return (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * Y1));
      case 21:
        return (K * erT * cnd(phi * X2 - phi * vsT)) -
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * y2 - eta * vsT));
      case 22:
        return (K * erT * cnd(phi * X1 - phi * vsT)) -
               (K * erT * cnd(phi * X2 - phi * vsT)) +
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * Y1 - eta * vsT)) -
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * y2 - eta * vsT));
      case 23:
        return (S * ebrT * cnd(phi * X2)) -
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * y2));
      case 24:
        return (S * ebrT * cnd(phi * X1)) - (S * ebrT * cnd(phi * X2)) +
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * Y1)) -
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * y2));
      case 25:
      case 27:
        return 0;
      case 26:
        return (K * erT * cnd(phi * X1 - phi * vsT)) -
               (K * erT * pow((HS), (2.0 * mu)) * cnd(eta * Y1 - eta * vsT));
      case 28:
        return (S * ebrT * cnd(phi * X1)) -
               (S * ebrT * pow((HS), (2.0 * (mu + 1.0))) * cnd(eta * Y1));
      default:
        abort();
      }
    } else
      abort();
    return result;
  }
}


x86 assembly (clang, -O0):
<BinaryBarrier>:
push   %rbp
mov    %rsp,%rbp
sub    $0x590,%rsp
mov    %edi,-0xc(%rbp)
movsd  %xmm0,-0x18(%rbp)
movsd  %xmm1,-0x20(%rbp)
movsd  %xmm2,-0x28(%rbp)
movsd  %xmm3,-0x30(%rbp)
movsd  %xmm4,-0x38(%rbp)
movsd  %xmm5,-0x40(%rbp)
movsd  %xmm6,-0x48(%rbp)
movsd  %xmm7,-0x50(%rbp)
mov    %esi,-0x54(%rbp)
mov    %edx,-0x58(%rbp)
movsd  -0x18(%rbp),%xmm0
xor    %eax,%eax
ucomisd -0x18(%rbp),%xmm0
mov    %al,-0xb9(%rbp)
jne    11ff <BinaryBarrier+0x8f>
jp     11ff <BinaryBarrier+0x8f>
movsd  -0x18(%rbp),%xmm0
xor    %eax,%eax
movsd  0x2e27(%rip),%xmm1
ucomisd %xmm1,%xmm0
mov    %al,-0xb9(%rbp)
jb     11ff <BinaryBarrier+0x8f>
movsd  0x2e17(%rip),%xmm0
ucomisd -0x18(%rbp),%xmm0
setae  %al
mov    %al,-0xb9(%rbp)
mov    -0xb9(%rbp),%al
and    $0x1,%al
movzbl %al,%edi
mov    $0x0,%al
call   1040 <assert@plt>
movsd  -0x20(%rbp),%xmm0
xor    %eax,%eax
ucomisd -0x20(%rbp),%xmm0
mov    %al,-0xba(%rbp)
jne    1264 <BinaryBarrier+0xf4>
jp     1264 <BinaryBarrier+0xf4>
movsd  -0x20(%rbp),%xmm0
xor    %eax,%eax
movsd  0x2dc2(%rip),%xmm1
ucomisd %xmm1,%xmm0
mov    %al,-0xba(%rbp)
jb     1264 <BinaryBarrier+0xf4>
movsd  0x2db2(%rip),%xmm0
ucomisd -0x20(%rbp),%xmm0
setae  %al
mov    %al,-0xba(%rbp)
mov    -0xba(%rbp),%al
and    $0x1,%al
movzbl %al,%edi
mov    $0x0,%al
call   1040 <assert@plt>
movsd  -0x38(%rbp),%xmm0
xor    %eax,%eax
ucomisd -0x38(%rbp),%xmm0
mov    %al,-0xbb(%rbp)
jne    12c9 <BinaryBarrier+0x159>
jp     12c9 <BinaryBarrier+0x159>
movsd  -0x38(%rbp),%xmm0
xor    %eax,%eax
movsd  0x2d6d(%rip),%xmm1
ucomisd %xmm1,%xmm0
mov    %al,-0xbb(%rbp)
jb     12c9 <BinaryBarrier+0x159>
movsd  0x2d5d(%rip),%xmm0
ucomisd -0x38(%rbp),%xmm0
setae  %al
mov    %al,-0xbb(%rbp)
mov    -0xbb(%rbp),%al
and    $0x1,%al
movzbl %al,%edi
mov    $0x0,%al
call   1040 <assert@plt>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  -0x50(%rbp),%xmm0
movsd  %xmm0,-0xc8(%rbp)
ff
movsd  -0x38(%rbp),%xmm0
call   1090 <sqrt@plt>
movaps %xmm0,%xmm1
movsd  -0xc8(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x68(%rbp)
movsd  -0x48(%rbp),%xmm0
subsd  -0x40(%rbp),%xmm0
mulsd  -0x38(%rbp),%xmm0
call   1050 <exp@plt>
movsd  %xmm0,-0x70(%rbp)
movsd  -0x40(%rbp),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  -0x38(%rbp),%xmm0
call   1050 <exp@plt>
movsd  %xmm0,-0x78(%rbp)
movsd  -0x28(%rbp),%xmm0
divsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x80(%rbp)
movsd  -0x48(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
mulsd  -0x50(%rbp),%xmm1
movsd  0x2cb0(%rip),%xmm2
divsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
movsd  -0x50(%rbp),%xmm1
mulsd  -0x50(%rbp),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
movsd  -0x88(%rbp),%xmm0
ff
movsd  -0x88(%rbp),%xmm2
ff
movsd  0x2c7a(%rip),%xmm1
mulsd  -0x40(%rbp),%xmm1
movsd  -0x50(%rbp),%xmm3
mulsd  -0x50(%rbp),%xmm3
divsd  %xmm3,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1090 <sqrt@plt>
movsd  %xmm0,-0x90(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
divsd  -0x20(%rbp),%xmm0
call   1060 <log@plt>
movaps %xmm0,%xmm1
divsd  -0x68(%rbp),%xmm1
movsd  0x2c2b(%rip),%xmm0
addsd  -0x88(%rbp),%xmm0
ff
movsd  -0x68(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x98(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
divsd  -0x28(%rbp),%xmm0
call   1060 <log@plt>
movaps %xmm0,%xmm1
divsd  -0x68(%rbp),%xmm1
movsd  0x2bef(%rip),%xmm0
addsd  -0x88(%rbp),%xmm0
ff
movsd  -0x68(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xa0(%rbp)
ff
movsd  -0x28(%rbp),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  -0x18(%rbp),%xmm1
mulsd  -0x20(%rbp),%xmm1
divsd  %xmm1,%xmm0
call   1060 <log@plt>
movaps %xmm0,%xmm1
divsd  -0x68(%rbp),%xmm1
movsd  0x2ba5(%rip),%xmm0
addsd  -0x88(%rbp),%xmm0
ff
movsd  -0x68(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xa8(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
call   1060 <log@plt>
movaps %xmm0,%xmm1
divsd  -0x68(%rbp),%xmm1
movsd  0x2b6e(%rip),%xmm0
addsd  -0x88(%rbp),%xmm0
ff
movsd  -0x68(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xb0(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
call   1060 <log@plt>
movaps %xmm0,%xmm1
divsd  -0x68(%rbp),%xmm1
movsd  -0x90(%rbp),%xmm0
ff
movsd  -0x68(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xb8(%rbp)
ff
xor    %eax,%eax
cmpl   $0x0,-0xc(%rbp)
mov    %al,-0xbc(%rbp)
jle    151d <BinaryBarrier+0x3ad>
cmpl   $0x1c,-0xc(%rbp)
setle  %al
mov    %al,-0xbc(%rbp)
mov    -0xbc(%rbp),%al
and    $0x1,%al
movzbl %al,%edi
mov    $0x0,%al
call   1040 <assert@plt>
cmpl   $0x5,-0xc(%rbp)
jge    1639 <BinaryBarrier+0x4c9>
movsd  -0x30(%rbp),%xmm0
movsd  %xmm0,-0xd0(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  -0x88(%rbp),%xmm1
ff
addsd  -0x90(%rbp),%xmm1
ff
call   1080 <pow@plt>
movsd  %xmm0,-0xe0(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xb8(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0xd8(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  -0x88(%rbp),%xmm1
ff
subsd  -0x90(%rbp),%xmm1
ff
call   1080 <pow@plt>
movsd  %xmm0,-0xe8(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xb8(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm3
movsd  0x2a64(%rip),%xmm1
mulsd  %xmm3,%xmm1
mulsd  -0x90(%rbp),%xmm1
ff
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0xe8(%rbp),%xmm2
ff
movsd  -0xe0(%rbp),%xmm1
ff
movsd  -0xd8(%rbp),%xmm3
ff
movsd  -0xd0(%rbp),%xmm0
ff
cvtsi2sd %eax,%xmm4
mulsd  %xmm4,%xmm2
mulsd  %xmm3,%xmm1
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
cmpl   $0x7,-0xc(%rbp)
jge    1750 <BinaryBarrier+0x5e0>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0xf8(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0xa0(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0xf0(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x108(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x296b(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x108(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x100(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xb0(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x100(%rbp),%xmm1
ff
movsd  -0xf8(%rbp),%xmm0
ff
movsd  -0xf0(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
cmpl   $0x9,-0xc(%rbp)
jge    1821 <BinaryBarrier+0x6b1>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x118(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0xa0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x110(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x128(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x2875(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x286d(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x128(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x120(%rbp),%xmm1
ff
movsd  -0x118(%rbp),%xmm0
ff
movsd  -0x110(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
cmpl   $0xb,-0xc(%rbp)
jge    194f <BinaryBarrier+0x7df>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x138(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0xa0(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x130(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x2783(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x148(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x140(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xb0(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x140(%rbp),%xmm1
ff
movsd  -0x138(%rbp),%xmm0
ff
movsd  -0x130(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
cmpl   $0xd,-0xc(%rbp)
jge    1a37 <BinaryBarrier+0x8c7>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0xa0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x150(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x2676(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x266e(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x168(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x160(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x160(%rbp),%xmm1
ff
movsd  -0x158(%rbp),%xmm0
ff
movsd  -0x150(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x20(%rbp),%xmm0
ucomisd -0x28(%rbp),%xmm0
jbe    29e7 <BinaryBarrier+0x1877>
mov    -0xc(%rbp),%eax
add    $0xfffffff3,%eax
mov    %eax,%ecx
mov    %rcx,-0x170(%rbp)
sub    $0xf,%eax
ja     29e2 <BinaryBarrier+0x1872>
mov    -0x170(%rbp),%rax
lea    0x2603(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x180(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x2593(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x180(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x178(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xa8(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x178(%rbp),%xmm0
ff
cvtsi2sd %eax,%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x190(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x24f1(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x24e9(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x190(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x188(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xa8(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x188(%rbp),%xmm0
ff
cvtsi2sd %eax,%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x198(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0x98(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x198(%rbp),%xmm0
ff
cvtsi2sd %eax,%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x1c0(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0xa0(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x1b8(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x1d0(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x23e1(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x1d0(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x1c8(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xa8(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x1c8(%rbp),%xmm1
ff
movsd  -0x1c0(%rbp),%xmm0
ff
movsd  -0x1b8(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1a0(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x1b0(%rbp)
movsd  -0x80(%rbp),%xmm0
movsd  0x231a(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x1b0(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x1a8(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xb0(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x1a8(%rbp),%xmm0
ff
movsd  -0x1a0(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x1f8(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0x98(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x1f0(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x200(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0xa0(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x200(%rbp),%xmm1
ff
movsd  -0x1f8(%rbp),%xmm0
ff
movsd  -0x1f0(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1d8(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x1e8(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x2183(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x1e8(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x1e0(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xb0(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x1e0(%rbp),%xmm0
ff
movsd  -0x1d8(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x228(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0xa0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x220(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x238(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x20a3(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x209b(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x238(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x230(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xa8(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x230(%rbp),%xmm1
ff
movsd  -0x228(%rbp),%xmm0
ff
movsd  -0x220(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x208(%rbp)
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x218(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x1ff9(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x1ff1(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x218(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x210(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x210(%rbp),%xmm0
ff
movsd  -0x208(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x260(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0x98(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x258(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x268(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0xa0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x268(%rbp),%xmm1
ff
movsd  -0x260(%rbp),%xmm0
ff
movsd  -0x258(%rbp),%xmm2
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x240(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x250(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x1ed1(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x1ec9(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x250(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x248(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xa8(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x248(%rbp),%xmm0
ff
movsd  -0x240(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x278(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0x98(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x270(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x288(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x1df5(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x288(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x280(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xa8(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x280(%rbp),%xmm1
ff
movsd  -0x278(%rbp),%xmm0
ff
movsd  -0x270(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x298(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0x98(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x290(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x2a8(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x1ce5(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x1cdd(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x2a8(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x2a0(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xa8(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x2a0(%rbp),%xmm1
ff
movsd  -0x298(%rbp),%xmm0
ff
movsd  -0x290(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x2e8(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0x98(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x2e0(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x2f0(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0xa0(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x2f0(%rbp),%xmm1
ff
movsd  -0x2e8(%rbp),%xmm0
ff
movsd  -0x2e0(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2c8(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x2d8(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x1b50(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x2d8(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x2d0(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xa8(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x2d0(%rbp),%xmm0
ff
movsd  -0x2c8(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2b0(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x2c0(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x1aac(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x2c0(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x2b8(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xb0(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x2b8(%rbp),%xmm0
ff
movsd  -0x2b0(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x300(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0xa0(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x2f8(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x310(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x1994(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x310(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x308(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xb0(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x308(%rbp),%xmm1
ff
movsd  -0x300(%rbp),%xmm0
ff
movsd  -0x2f8(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x350(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0x98(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x348(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x358(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0xa0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x358(%rbp),%xmm1
ff
movsd  -0x350(%rbp),%xmm0
ff
movsd  -0x348(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x330(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x340(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x1824(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x181c(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x340(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x338(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xa8(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x338(%rbp),%xmm0
ff
movsd  -0x330(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x318(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x328(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x179d(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x1795(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x328(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x320(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x320(%rbp),%xmm0
ff
movsd  -0x318(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x368(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0xa0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x360(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x378(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x16cb(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x16c3(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x378(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x370(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x370(%rbp),%xmm1
ff
movsd  -0x368(%rbp),%xmm0
ff
movsd  -0x360(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
call   1030 <abort@plt>
movsd  -0x20(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm0
ucomisd %xmm1,%xmm0
jbe    3a04 <BinaryBarrier+0x2894>
mov    -0xc(%rbp),%eax
add    $0xfffffff3,%eax
mov    %eax,%ecx
mov    %rcx,-0x380(%rbp)
sub    $0xf,%eax
ja     39ff <BinaryBarrier+0x288f>
mov    -0x380(%rbp),%rax
lea    0x160f(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x3a8(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0x98(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x3a0(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x3b0(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0xa0(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x3b0(%rbp),%xmm1
ff
movsd  -0x3a8(%rbp),%xmm0
ff
movsd  -0x3a0(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x388(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x398(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x14ee(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x398(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x390(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xb0(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x390(%rbp),%xmm0
ff
movsd  -0x388(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x3d8(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0xa0(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x3d0(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x3e8(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x13ed(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x3e8(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x3e0(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xa8(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x3e0(%rbp),%xmm1
ff
movsd  -0x3d8(%rbp),%xmm0
ff
movsd  -0x3d0(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3b8(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x3c8(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x1326(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x3c8(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x3c0(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xb0(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x3c0(%rbp),%xmm0
ff
movsd  -0x3b8(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x410(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0x98(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x408(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x418(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0xa0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x418(%rbp),%xmm1
ff
movsd  -0x410(%rbp),%xmm0
ff
movsd  -0x408(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3f0(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x400(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x11d9(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x11d1(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x400(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x3f8(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x3f8(%rbp),%xmm0
ff
movsd  -0x3f0(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x440(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0xa0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x438(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x450(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x111e(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x1116(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x450(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x448(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xa8(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x448(%rbp),%xmm1
ff
movsd  -0x440(%rbp),%xmm0
ff
movsd  -0x438(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x420(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x430(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x1074(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x106c(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x430(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x428(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x428(%rbp),%xmm0
ff
movsd  -0x420(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x458(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0x98(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x458(%rbp),%xmm0
ff
cvtsi2sd %eax,%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x468(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0xf8a(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x468(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x460(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xa8(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x460(%rbp),%xmm0
ff
cvtsi2sd %eax,%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x470(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0x98(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x470(%rbp),%xmm0
ff
cvtsi2sd %eax,%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x480(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0xea8(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0xea0(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x480(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x478(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xa8(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x478(%rbp),%xmm0
ff
cvtsi2sd %eax,%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x490(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0xa0(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x488(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x4a0(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0xdd8(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x4a0(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x498(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xb0(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x498(%rbp),%xmm1
ff
movsd  -0x490(%rbp),%xmm0
ff
movsd  -0x488(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x4e0(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0x98(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x4d8(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x4e8(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0xa0(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x4e8(%rbp),%xmm1
ff
movsd  -0x4e0(%rbp),%xmm0
ff
movsd  -0x4d8(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x4c0(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x4d0(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0xc1e(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x4d0(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x4c8(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xa8(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x4c8(%rbp),%xmm0
ff
movsd  -0x4c0(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x4a8(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x4b8(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0xb7a(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x4b8(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x4b0(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xb0(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x4b0(%rbp),%xmm0
ff
movsd  -0x4a8(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x4f8(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0xa0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x4f0(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x508(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0xa83(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0xa7b(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x508(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x500(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x500(%rbp),%xmm1
ff
movsd  -0x4f8(%rbp),%xmm0
ff
movsd  -0x4f0(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x548(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0x98(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x540(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x550(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0xa0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x550(%rbp),%xmm1
ff
movsd  -0x548(%rbp),%xmm0
ff
movsd  -0x540(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x528(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x538(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x938(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x930(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x538(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x530(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xa8(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x530(%rbp),%xmm0
ff
movsd  -0x528(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x510(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x520(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x8b1(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x8a9(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x520(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x518(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x518(%rbp),%xmm0
ff
movsd  -0x510(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x560(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
movsd  -0x98(%rbp),%xmm2
ff
cvtsi2sdl -0x58(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x558(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x570(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x7b1(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x570(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x568(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
movsd  -0xa8(%rbp),%xmm2
ff
cvtsi2sdl -0x54(%rbp),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x568(%rbp),%xmm1
ff
movsd  -0x560(%rbp),%xmm0
ff
movsd  -0x558(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x580(%rbp)
ff
cvtsi2sdl -0x58(%rbp),%xmm0
mulsd  -0x98(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x578(%rbp)
ff
movsd  -0x18(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x590(%rbp)
ff
movsd  -0x80(%rbp),%xmm0
movsd  0x6ae(%rip),%xmm2
addsd  -0x88(%rbp),%xmm2
ff
movsd  0x6a6(%rip),%xmm1
mulsd  %xmm2,%xmm1
call   1080 <pow@plt>
movaps %xmm0,%xmm1
movsd  -0x590(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x588(%rbp)
ff
cvtsi2sdl -0x54(%rbp),%xmm0
mulsd  -0xa8(%rbp),%xmm0
ff
mov    $0x1,%al
call   1070 <cnd@plt>
movsd  -0x588(%rbp),%xmm1
ff
movsd  -0x580(%rbp),%xmm0
ff
movsd  -0x578(%rbp),%xmm2
ff
cvtsi2sd %eax,%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x8(%rbp)
jmp    3a09 <BinaryBarrier+0x2899>
call   1030 <abort@plt>
call   1030 <abort@plt>
movsd  -0x8(%rbp),%xmm0
add    $0x590,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<BinaryBarrier>:
push   %rbp
push   %r14
push   %rbx
sub    $0x90,%rsp
ucomisd %xmm0,%xmm0
setnp  %al
ucomisd 0x1e76(%rip),%xmm0
setae  %cl
and    %al,%cl
movsd  0x1e70(%rip),%xmm8
movsd  %xmm0,0x8(%rsp)
ucomisd %xmm0,%xmm8
mov    %edx,%ebp
mov    %esi,%r14d
movsd  %xmm7,0x38(%rsp)
movsd  %xmm6,0x40(%rsp)
movapd %xmm5,0x70(%rsp)
movsd  %xmm4,(%rsp)
movsd  %xmm3,0x68(%rsp)
movsd  %xmm2,0x50(%rsp)
movsd  %xmm1,0x30(%rsp)
mov    %edi,%ebx
setae  %al
and    %cl,%al
movzbl %al,%edi
xor    %eax,%eax
call   1040 <assert@plt>
movsd  0x30(%rsp),%xmm1
ucomisd %xmm1,%xmm1
setnp  %al
ucomisd 0x1e09(%rip),%xmm1
setae  %cl
and    %al,%cl
movsd  0x1e04(%rip),%xmm0
ucomisd %xmm1,%xmm0
setae  %al
and    %cl,%al
movzbl %al,%edi
xor    %eax,%eax
call   1040 <assert@plt>
movsd  (%rsp),%xmm1
ucomisd %xmm1,%xmm1
setnp  %al
ucomisd 0x1de5(%rip),%xmm1
setae  %cl
and    %al,%cl
movsd  0x1de0(%rip),%xmm0
ucomisd %xmm1,%xmm0
setae  %al
and    %cl,%al
movzbl %al,%edi
xor    %eax,%eax
call   1040 <assert@plt>
xorpd  %xmm0,%xmm0
movsd  (%rsp),%xmm1
ucomisd %xmm0,%xmm1
jb     1265 <BinaryBarrier+0xf5>
movsd  (%rsp),%xmm0
sqrtsd %xmm0,%xmm0
jmp    126f <BinaryBarrier+0xff>
movsd  (%rsp),%xmm0
call   1090 <sqrt@plt>
movapd %xmm0,0x20(%rsp)
movsd  0x40(%rsp),%xmm0
subsd  0x70(%rsp),%xmm0
mulsd  (%rsp),%xmm0
call   1050 <exp@plt>
movsd  %xmm0,0x10(%rsp)
movapd 0x1da7(%rip),%xmm0
xorpd  0x70(%rsp),%xmm0
mulsd  (%rsp),%xmm0
call   1050 <exp@plt>
movsd  %xmm0,0x18(%rsp)
movsd  0x50(%rsp),%xmm0
divsd  0x8(%rsp),%xmm0
movsd  %xmm0,(%rsp)
movsd  0x38(%rsp),%xmm2
movapd %xmm2,%xmm0
mulsd  %xmm2,%xmm0
movsd  0x1d4a(%rip),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x40(%rsp),%xmm1
divsd  %xmm0,%xmm1
movapd 0x70(%rsp),%xmm3
addsd  %xmm3,%xmm3
divsd  %xmm0,%xmm3
movsd  %xmm1,0x40(%rsp)
movapd %xmm1,%xmm0
mulsd  %xmm1,%xmm0
addsd  %xmm3,%xmm0
ucomisd 0x1d2c(%rip),%xmm0
jb     1314 <BinaryBarrier+0x1a4>
sqrtsd %xmm0,%xmm0
jmp    131f <BinaryBarrier+0x1af>
call   1090 <sqrt@plt>
movsd  0x38(%rsp),%xmm2
movsd  %xmm0,0x70(%rsp)
movsd  0x30(%rsp),%xmm1
movapd 0x20(%rsp),%xmm0
mulsd  %xmm2,%xmm0
movapd %xmm0,0x20(%rsp)
movsd  0x8(%rsp),%xmm0
divsd  %xmm1,%xmm0
call   1060 <log@plt>
movsd  %xmm0,0x80(%rsp)
movsd  0x8(%rsp),%xmm0
divsd  0x50(%rsp),%xmm0
call   1060 <log@plt>
movsd  %xmm0,0x60(%rsp)
movsd  0x50(%rsp),%xmm0
mulsd  %xmm0,%xmm0
movsd  0x8(%rsp),%xmm1
mulsd  0x30(%rsp),%xmm1
divsd  %xmm1,%xmm0
call   1060 <log@plt>
movsd  %xmm0,0x48(%rsp)
movsd  (%rsp),%xmm0
call   1060 <log@plt>
movsd  %xmm0,0x38(%rsp)
movsd  (%rsp),%xmm0
call   1060 <log@plt>
movsd  %xmm0,0x88(%rsp)
lea    -0x1(%rbx),%eax
xor    %edi,%edi
cmp    $0x1c,%eax
setb   %dil
xor    %eax,%eax
call   1040 <assert@plt>
cmp    $0x4,%ebx
jg     14b6 <BinaryBarrier+0x346>
movapd 0x20(%rsp),%xmm1
movsd  0x88(%rsp),%xmm3
divsd  %xmm1,%xmm3
movsd  0x70(%rsp),%xmm2
movapd %xmm2,%xmm0
mulsd  %xmm1,%xmm0
addsd  %xmm3,%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x40(%rsp),%xmm1
addsd  %xmm2,%xmm1
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
movsd  %xmm0,0x50(%rsp)
xorps  %xmm1,%xmm1
cvtsi2sd %r14d,%xmm1
movsd  %xmm1,0x38(%rsp)
movsd  0x8(%rsp),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,0x8(%rsp)
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0x40(%rsp),%xmm1
subsd  0x70(%rsp),%xmm1
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
movsd  0x38(%rsp),%xmm1
mulsd  0x1bc7(%rip),%xmm1
movsd  %xmm0,(%rsp)
mulsd  0x70(%rsp),%xmm1
mulsd  0x20(%rsp),%xmm1
addsd  0x8(%rsp),%xmm1
movapd %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  (%rsp),%xmm0
movsd  0x30(%rsp),%xmm1
mulsd  0x50(%rsp),%xmm1
addsd  %xmm0,%xmm1
movapd %xmm1,%xmm0
mulsd  0x68(%rsp),%xmm0
jmp    178f <BinaryBarrier+0x61f>
movsd  0x1b6a(%rip),%xmm5
movsd  0x40(%rsp),%xmm1
addsd  %xmm1,%xmm5
movapd %xmm5,%xmm0
movapd 0x20(%rsp),%xmm2
mulsd  %xmm2,%xmm0
movsd  0x60(%rsp),%xmm6
divsd  %xmm2,%xmm6
addsd  %xmm0,%xmm6
movsd  0x38(%rsp),%xmm4
divsd  %xmm2,%xmm4
addsd  %xmm0,%xmm4
cmp    $0x6,%ebx
movsd  %xmm4,0x38(%rsp)
ja     15a9 <BinaryBarrier+0x439>
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
movsd  0x18(%rsp),%xmm3
mulsd  0x68(%rsp),%xmm3
movsd  %xmm3,0x18(%rsp)
mulsd  %xmm0,%xmm6
mulsd  %xmm2,%xmm0
subsd  %xmm0,%xmm6
movapd %xmm6,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x40(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
xorps  %xmm3,%xmm3
cvtsi2sd %r14d,%xmm3
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,(%rsp)
movapd 0x20(%rsp),%xmm2
mulsd  %xmm3,%xmm2
movsd  0x38(%rsp),%xmm1
mulsd  %xmm3,%xmm1
subsd  %xmm2,%xmm1
movapd %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm1,%xmm1
cvtsi2sd %eax,%xmm1
mulsd  (%rsp),%xmm1
movsd  0x8(%rsp),%xmm0
mulsd  0x18(%rsp),%xmm0
addsd  %xmm1,%xmm0
jmp    178f <BinaryBarrier+0x61f>
cmp    $0x8,%ebx
ja     1646 <BinaryBarrier+0x4d6>
movsd  0x10(%rsp),%xmm0
mulsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x10(%rsp)
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
mulsd  %xmm0,%xmm6
movapd %xmm6,%xmm0
mov    $0x1,%al
movsd  %xmm5,0x8(%rsp)
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x8(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
mulsd  0x10(%rsp),%xmm0
movsd  %xmm0,(%rsp)
xorps  %xmm1,%xmm1
cvtsi2sd %r14d,%xmm1
movsd  0x38(%rsp),%xmm0
mulsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm1,%xmm1
cvtsi2sd %eax,%xmm1
mulsd  (%rsp),%xmm1
movsd  0x20(%rsp),%xmm0
mulsd  0x10(%rsp),%xmm0
addsd  %xmm1,%xmm0
jmp    178f <BinaryBarrier+0x61f>
cmp    $0xa,%ebx
ja     16f1 <BinaryBarrier+0x581>
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
movsd  0x18(%rsp),%xmm3
mulsd  0x68(%rsp),%xmm3
movsd  %xmm3,0x18(%rsp)
mulsd  %xmm0,%xmm6
mulsd  %xmm2,%xmm0
subsd  %xmm0,%xmm6
movapd %xmm6,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x40(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
xorps  %xmm1,%xmm1
cvtsi2sd %r14d,%xmm1
movsd  %xmm0,(%rsp)
movapd 0x20(%rsp),%xmm2
mulsd  %xmm1,%xmm2
movsd  0x38(%rsp),%xmm0
mulsd  %xmm1,%xmm0
subsd  %xmm2,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  0x18(%rsp),%xmm1
movsd  (%rsp),%xmm2
mulsd  %xmm1,%xmm2
mulsd  %xmm0,%xmm2
movsd  0x8(%rsp),%xmm0
jmp    1787 <BinaryBarrier+0x617>
cmp    $0xc,%ebx
ja     179b <BinaryBarrier+0x62b>
movsd  0x10(%rsp),%xmm0
mulsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x10(%rsp)
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
mulsd  %xmm0,%xmm6
movapd %xmm6,%xmm0
mov    $0x1,%al
movsd  %xmm5,0x8(%rsp)
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x8(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
movsd  %xmm0,(%rsp)
xorps  %xmm1,%xmm1
cvtsi2sd %r14d,%xmm1
movsd  0x38(%rsp),%xmm0
mulsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  0x10(%rsp),%xmm1
movsd  (%rsp),%xmm2
mulsd  %xmm1,%xmm2
mulsd  %xmm0,%xmm2
movsd  0x20(%rsp),%xmm0
mulsd  %xmm1,%xmm0
subsd  %xmm2,%xmm0
add    $0x90,%rsp
pop    %rbx
pop    %r14
pop    %rbp
ret
movsd  0x80(%rsp),%xmm8
divsd  %xmm2,%xmm8
addsd  %xmm0,%xmm8
movsd  0x48(%rsp),%xmm3
divsd  %xmm2,%xmm3
addsd  %xmm0,%xmm3
movsd  0x50(%rsp),%xmm0
movsd  0x30(%rsp),%xmm7
ucomisd %xmm0,%xmm7
movsd  %xmm3,0x48(%rsp)
jbe    18ac <BinaryBarrier+0x73c>
add    $0xfffffff3,%ebx
cmp    $0xf,%ebx
ja     2113 <BinaryBarrier+0xfa3>
xorpd  %xmm0,%xmm0
lea    0x18a0(%rip),%rax
movslq (%rax,%rbx,4),%rcx
add    %rax,%rcx
jmp    *%rcx
movsd  0x10(%rsp),%xmm0
mulsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x10(%rsp)
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
movsd  %xmm0,0x50(%rsp)
mulsd  %xmm0,%xmm8
movapd %xmm8,%xmm0
mov    $0x1,%al
movsd  %xmm5,0x8(%rsp)
movsd  %xmm6,0x60(%rsp)
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x60(%rsp),%xmm0
mulsd  0x50(%rsp),%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  0x10(%rsp),%xmm2
mulsd  %xmm2,%xmm0
movsd  0x20(%rsp),%xmm1
mulsd  %xmm2,%xmm1
subsd  %xmm0,%xmm1
movsd  %xmm1,0x20(%rsp)
movsd  0x8(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
mulsd  0x10(%rsp),%xmm0
movsd  %xmm0,(%rsp)
xorps  %xmm1,%xmm1
cvtsi2sd %r14d,%xmm1
movsd  0x48(%rsp),%xmm0
jmp    20ac <BinaryBarrier+0xf3c>
ucomisd %xmm7,%xmm0
jbe    2113 <BinaryBarrier+0xfa3>
add    $0xfffffff3,%ebx
cmp    $0xf,%ebx
ja     2113 <BinaryBarrier+0xfa3>
xorpd  %xmm0,%xmm0
lea    0x1783(%rip),%rax
movslq (%rax,%rbx,4),%rcx
add    %rax,%rcx
jmp    *%rcx
movsd  0x18(%rsp),%xmm0
mulsd  0x68(%rsp),%xmm0
movsd  %xmm0,0x18(%rsp)
xorps  %xmm3,%xmm3
cvtsi2sd %ebp,%xmm3
movsd  %xmm3,0x30(%rsp)
movapd 0x1743(%rip),%xmm0
xorpd  %xmm2,%xmm0
mulsd  %xmm3,%xmm0
movapd %xmm0,0x50(%rsp)
mulsd  %xmm3,%xmm8
addsd  %xmm0,%xmm8
movapd %xmm8,%xmm0
mov    $0x1,%al
movsd  %xmm6,0x60(%rsp)
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x60(%rsp),%xmm0
mulsd  0x30(%rsp),%xmm0
addsd  0x50(%rsp),%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  0x18(%rsp),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x8(%rsp),%xmm2
mulsd  %xmm1,%xmm2
subsd  %xmm0,%xmm2
movsd  %xmm2,0x8(%rsp)
movsd  0x40(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
xorps  %xmm3,%xmm3
cvtsi2sd %r14d,%xmm3
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,(%rsp)
movapd 0x20(%rsp),%xmm2
mulsd  %xmm3,%xmm2
movsd  0x38(%rsp),%xmm1
mulsd  %xmm3,%xmm1
subsd  %xmm2,%xmm1
movapd %xmm1,%xmm0
jmp    1b04 <BinaryBarrier+0x994>
movsd  0x18(%rsp),%xmm0
mulsd  0x68(%rsp),%xmm0
movsd  %xmm0,0x18(%rsp)
addsd  %xmm1,%xmm1
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
xorps  %xmm1,%xmm1
cvtsi2sd %r14d,%xmm1
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,(%rsp)
movapd 0x20(%rsp),%xmm2
mulsd  %xmm1,%xmm2
movsd  0x48(%rsp),%xmm0
mulsd  %xmm1,%xmm0
subsd  %xmm2,%xmm0
jmp    1c74 <BinaryBarrier+0xb04>
movsd  0x18(%rsp),%xmm0
mulsd  0x68(%rsp),%xmm0
movsd  %xmm0,0x18(%rsp)
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
mulsd  %xmm0,%xmm6
mulsd  %xmm2,%xmm0
xorpd  0x160d(%rip),%xmm2
movapd %xmm2,0x20(%rsp)
subsd  %xmm0,%xmm6
movapd %xmm6,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x40(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  %xmm1,0x40(%rsp)
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
xorps  %xmm2,%xmm2
cvtsi2sd %r14d,%xmm2
movsd  %xmm2,0x50(%rsp)
movsd  %xmm0,0x30(%rsp)
movapd 0x20(%rsp),%xmm1
mulsd  %xmm2,%xmm1
movapd %xmm1,0x20(%rsp)
movsd  0x48(%rsp),%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  0x18(%rsp),%xmm1
movsd  0x30(%rsp),%xmm2
mulsd  %xmm1,%xmm2
mulsd  %xmm0,%xmm2
movsd  0x8(%rsp),%xmm0
mulsd  %xmm1,%xmm0
subsd  %xmm2,%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  (%rsp),%xmm0
movsd  0x40(%rsp),%xmm1
call   1080 <pow@plt>
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,(%rsp)
movsd  0x38(%rsp),%xmm0
mulsd  0x50(%rsp),%xmm0
addsd  0x20(%rsp),%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  (%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
jmp    178f <BinaryBarrier+0x61f>
movsd  0x10(%rsp),%xmm0
mulsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x10(%rsp)
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
mulsd  %xmm0,%xmm6
movapd %xmm6,%xmm0
mov    $0x1,%al
movsd  %xmm5,0x8(%rsp)
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x8(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  %xmm1,0x8(%rsp)
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
movsd  %xmm0,0x30(%rsp)
xorps  %xmm1,%xmm1
cvtsi2sd %r14d,%xmm1
movsd  %xmm1,0x50(%rsp)
movsd  0x48(%rsp),%xmm0
mulsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  0x10(%rsp),%xmm1
movsd  0x30(%rsp),%xmm2
mulsd  %xmm1,%xmm2
mulsd  %xmm0,%xmm2
movsd  0x20(%rsp),%xmm0
mulsd  %xmm1,%xmm0
subsd  %xmm2,%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  (%rsp),%xmm0
movsd  0x8(%rsp),%xmm1
call   1080 <pow@plt>
mulsd  0x10(%rsp),%xmm0
movsd  %xmm0,(%rsp)
movsd  0x38(%rsp),%xmm0
mulsd  0x50(%rsp),%xmm0
jmp    20b0 <BinaryBarrier+0xf40>
movsd  0x10(%rsp),%xmm0
mulsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x10(%rsp)
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
mulsd  %xmm0,%xmm8
movapd %xmm8,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  0x10(%rsp),%xmm0
jmp    178f <BinaryBarrier+0x61f>
movsd  0x10(%rsp),%xmm0
mulsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x10(%rsp)
addsd  %xmm5,%xmm5
movsd  (%rsp),%xmm0
movapd %xmm5,%xmm1
call   1080 <pow@plt>
mulsd  0x10(%rsp),%xmm0
movsd  %xmm0,(%rsp)
xorps  %xmm1,%xmm1
cvtsi2sd %r14d,%xmm1
movsd  0x48(%rsp),%xmm0
mulsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  (%rsp),%xmm0
jmp    178f <BinaryBarrier+0x61f>
xorps  %xmm3,%xmm3
cvtsi2sd %ebp,%xmm3
xorpd  0x13a5(%rip),%xmm2
movapd %xmm2,0x20(%rsp)
movsd  0x18(%rsp),%xmm0
mulsd  0x68(%rsp),%xmm0
movsd  %xmm0,0x18(%rsp)
movapd %xmm3,%xmm0
movsd  %xmm3,0x30(%rsp)
mulsd  %xmm2,%xmm3
movsd  %xmm3,0x50(%rsp)
mulsd  %xmm0,%xmm8
addsd  %xmm3,%xmm8
movapd %xmm8,%xmm0
mov    $0x1,%al
movsd  %xmm6,0x60(%rsp)
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x60(%rsp),%xmm0
mulsd  0x30(%rsp),%xmm0
addsd  0x50(%rsp),%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  0x18(%rsp),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x8(%rsp),%xmm2
mulsd  %xmm1,%xmm2
subsd  %xmm0,%xmm2
movsd  %xmm2,0x8(%rsp)
movsd  0x40(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  %xmm1,0x40(%rsp)
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
xorps  %xmm2,%xmm2
cvtsi2sd %r14d,%xmm2
movsd  %xmm2,0x50(%rsp)
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
movapd 0x20(%rsp),%xmm1
mulsd  %xmm2,%xmm1
movapd %xmm1,0x20(%rsp)
movsd  0x48(%rsp),%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  0x30(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  (%rsp),%xmm0
movsd  0x40(%rsp),%xmm1
call   1080 <pow@plt>
movsd  %xmm0,(%rsp)
movsd  0x38(%rsp),%xmm0
mulsd  0x50(%rsp),%xmm0
addsd  0x20(%rsp),%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  (%rsp),%xmm1
mulsd  0x18(%rsp),%xmm1
mulsd  %xmm0,%xmm1
movsd  0x8(%rsp),%xmm0
subsd  %xmm1,%xmm0
jmp    178f <BinaryBarrier+0x61f>
movsd  0x10(%rsp),%xmm0
mulsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x10(%rsp)
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
movsd  %xmm0,0x50(%rsp)
mulsd  %xmm0,%xmm8
movapd %xmm8,%xmm0
mov    $0x1,%al
movsd  %xmm5,0x8(%rsp)
movsd  %xmm6,0x60(%rsp)
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x60(%rsp),%xmm0
mulsd  0x50(%rsp),%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  0x10(%rsp),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x20(%rsp),%xmm2
mulsd  %xmm1,%xmm2
subsd  %xmm0,%xmm2
movsd  %xmm2,0x20(%rsp)
movsd  0x8(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  %xmm1,0x8(%rsp)
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
mulsd  0x10(%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
xorps  %xmm1,%xmm1
cvtsi2sd %r14d,%xmm1
movsd  %xmm1,0x50(%rsp)
movsd  0x48(%rsp),%xmm0
mulsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  0x30(%rsp),%xmm0
addsd  0x20(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  (%rsp),%xmm0
movsd  0x8(%rsp),%xmm1
call   1080 <pow@plt>
movsd  %xmm0,(%rsp)
movsd  0x38(%rsp),%xmm0
mulsd  0x50(%rsp),%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  (%rsp),%xmm1
mulsd  0x10(%rsp),%xmm1
mulsd  %xmm0,%xmm1
movsd  0x20(%rsp),%xmm0
subsd  %xmm1,%xmm0
jmp    178f <BinaryBarrier+0x61f>
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
movsd  0x18(%rsp),%xmm3
mulsd  0x68(%rsp),%xmm3
movsd  %xmm3,0x18(%rsp)
mulsd  %xmm0,%xmm8
mulsd  %xmm2,%xmm0
subsd  %xmm0,%xmm8
movapd %xmm8,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x40(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
xorps  %xmm1,%xmm1
cvtsi2sd %r14d,%xmm1
movsd  %xmm0,(%rsp)
movapd 0x20(%rsp),%xmm2
mulsd  %xmm1,%xmm2
movsd  0x48(%rsp),%xmm0
jmp    16bd <BinaryBarrier+0x54d>
movsd  0x10(%rsp),%xmm0
mulsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x10(%rsp)
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
mulsd  %xmm0,%xmm8
movapd %xmm8,%xmm0
mov    $0x1,%al
movsd  %xmm5,0x8(%rsp)
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x8(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
movsd  %xmm0,(%rsp)
xorps  %xmm1,%xmm1
cvtsi2sd %r14d,%xmm1
movsd  0x48(%rsp),%xmm0
jmp    175c <BinaryBarrier+0x5ec>
movsd  0x10(%rsp),%xmm0
mulsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x10(%rsp)
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
movsd  %xmm0,0x50(%rsp)
mulsd  %xmm0,%xmm8
movapd %xmm8,%xmm0
mov    $0x1,%al
movsd  %xmm5,0x8(%rsp)
movsd  %xmm6,0x60(%rsp)
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x60(%rsp),%xmm0
mulsd  0x50(%rsp),%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  0x10(%rsp),%xmm2
mulsd  %xmm2,%xmm0
movsd  0x20(%rsp),%xmm1
mulsd  %xmm2,%xmm1
subsd  %xmm0,%xmm1
movsd  %xmm1,0x20(%rsp)
movsd  0x8(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  (%rsp),%xmm0
call   1080 <pow@plt>
mulsd  0x10(%rsp),%xmm0
movsd  %xmm0,(%rsp)
xorps  %xmm1,%xmm1
cvtsi2sd %r14d,%xmm1
movsd  0x38(%rsp),%xmm0
mulsd  %xmm1,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  (%rsp),%xmm0
addsd  0x20(%rsp),%xmm0
jmp    178f <BinaryBarrier+0x61f>
xorps  %xmm0,%xmm0
cvtsi2sd %ebp,%xmm0
movsd  0x18(%rsp),%xmm1
mulsd  0x68(%rsp),%xmm1
movsd  %xmm1,0x18(%rsp)
mulsd  %xmm0,%xmm2
mulsd  %xmm0,%xmm8
subsd  %xmm2,%xmm8
movapd %xmm8,%xmm0
mov    $0x1,%al
call   1070 <cnd@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
mulsd  0x18(%rsp),%xmm0
jmp    178f <BinaryBarrier+0x61f>
call   1030 <abort@plt>

LLVM IR (-O0):
define double @BinaryBarrier(i32 %0, double %1, double %2, double %3, double %4, double %5, double %6, double %7, double %8, i32 %9, i32 %10) {
%12 = alloca double
%13 = alloca i32
%14 = alloca double
%15 = alloca double
%16 = alloca double
%17 = alloca double
%18 = alloca double
%19 = alloca double
%20 = alloca double
%21 = alloca double
%22 = alloca i32
%23 = alloca i32
%24 = alloca double
%25 = alloca double
%26 = alloca double
%27 = alloca double
%28 = alloca double
%29 = alloca double
%30 = alloca double
%31 = alloca double
%32 = alloca double
%33 = alloca double
%34 = alloca double
%35 = alloca double
store i32 %0, i32* %13
store double %1, double* %14
store double %2, double* %15
store double %3, double* %16
store double %4, double* %17
store double %5, double* %18
store double %6, double* %19
store double %7, double* %20
store double %8, double* %21
store i32 %9, i32* %22
store i32 %10, i32* %23
%36 = load double, double* %14
%37 = load double, double* %14
%38 = fcmp oeq double %36, %37
br i1 %38, label %39, label %45
39: ; preds = %11
%40 = load double, double* %14
%41 = fcmp oge double %40, 0x3EB0C6F7A0B5ED8D
br i1 %41, label %42, label %45
42: ; preds = %39
%43 = load double, double* %14
%44 = fcmp ole double %43, 1.000000e+12
br label %45
45: ; preds = %42, %39, %11
%46 = phi i1 [ false, %39 ], [ false, %11 ], [ %44, %42 ]
%47 = zext i1 %46 to i32
%48 = call i32 (i32, ...) bitcast (i32 (...)* @assert to i32 (i32, ...)*)(i32 %47)
%49 = load double, double* %15
%50 = load double, double* %15
%51 = fcmp oeq double %49, %50
br i1 %51, label %52, label %58
52: ; preds = %45
%53 = load double, double* %15
%54 = fcmp oge double %53, 0x3EB0C6F7A0B5ED8D
br i1 %54, label %55, label %58
55: ; preds = %52
%56 = load double, double* %15
%57 = fcmp ole double %56, 1.000000e+12
br label %58
58: ; preds = %55, %52, %45
%59 = phi i1 [ false, %52 ], [ false, %45 ], [ %57, %55 ]
%60 = zext i1 %59 to i32
%61 = call i32 (i32, ...) bitcast (i32 (...)* @assert to i32 (i32, ...)*)(i32 %60)
%62 = load double, double* %18
%63 = load double, double* %18
%64 = fcmp oeq double %62, %63
br i1 %64, label %65, label %71
65: ; preds = %58
%66 = load double, double* %18
%67 = fcmp oge double %66, 0x3F2596179C29D2CE
br i1 %67, label %68, label %71
68: ; preds = %65
%69 = load double, double* %18
%70 = fcmp ole double %69, 2.000000e+01
br label %71
71: ; preds = %68, %65, %58
%72 = phi i1 [ false, %65 ], [ false, %58 ], [ %70, %68 ]
%73 = zext i1 %72 to i32
%74 = call i32 (i32, ...) bitcast (i32 (...)* @assert to i32 (i32, ...)*)(i32 %73)
store double 0.000000e+00, double* %24
%75 = load double, double* %21
%76 = load double, double* %18
%77 = call double @sqrt(double %76)
%78 = fmul double %75, %77
store double %78, double* %25
%79 = load double, double* %20
%80 = load double, double* %19
%81 = fsub double %79, %80
%82 = load double, double* %18
%83 = fmul double %81, %82
%84 = call double @exp(double %83)
store double %84, double* %26
%85 = load double, double* %19
%86 = fneg double %85
%87 = load double, double* %18
%88 = fmul double %86, %87
%89 = call double @exp(double %88)
store double %89, double* %27
%90 = load double, double* %16
%91 = load double, double* %14
%92 = fdiv double %90, %91
store double %92, double* %28
%93 = load double, double* %20
%94 = load double, double* %21
%95 = load double, double* %21
%96 = fmul double %94, %95
%97 = fdiv double %96, 2.000000e+00
%98 = fsub double %93, %97
%99 = load double, double* %21
%100 = load double, double* %21
%101 = fmul double %99, %100
%102 = fdiv double %98, %101
store double %102, double* %29
%103 = load double, double* %29
%104 = load double, double* %29
%105 = load double, double* %19
%106 = fmul double 2.000000e+00, %105
%107 = load double, double* %21
%108 = load double, double* %21
%109 = fmul double %107, %108
%110 = fdiv double %106, %109
%111 = call double @llvm.fmuladd.f64(double %103, double %104, double %110)
%112 = call double @sqrt(double %111)
store double %112, double* %30
%113 = load double, double* %14
%114 = load double, double* %15
%115 = fdiv double %113, %114
%116 = call double @log(double %115)
%117 = load double, double* %25
%118 = fdiv double %116, %117
%119 = load double, double* %29
%120 = fadd double %119, 1.000000e+00
%121 = load double, double* %25
%122 = call double @llvm.fmuladd.f64(double %120, double %121, double %118)
store double %122, double* %31
%123 = load double, double* %14
%124 = load double, double* %16
%125 = fdiv double %123, %124
%126 = call double @log(double %125)
%127 = load double, double* %25
%128 = fdiv double %126, %127
%129 = load double, double* %29
%130 = fadd double %129, 1.000000e+00
%131 = load double, double* %25
%132 = call double @llvm.fmuladd.f64(double %130, double %131, double %128)
store double %132, double* %32
%133 = load double, double* %16
%134 = load double, double* %16
%135 = fmul double %133, %134
%136 = load double, double* %14
%137 = load double, double* %15
%138 = fmul double %136, %137
%139 = fdiv double %135, %138
%140 = call double @log(double %139)
%141 = load double, double* %25
%142 = fdiv double %140, %141
%143 = load double, double* %29
%144 = fadd double %143, 1.000000e+00
%145 = load double, double* %25
%146 = call double @llvm.fmuladd.f64(double %144, double %145, double %142)
store double %146, double* %33
%147 = load double, double* %28
%148 = call double @log(double %147)
%149 = load double, double* %25
%150 = fdiv double %148, %149
%151 = load double, double* %29
%152 = fadd double %151, 1.000000e+00
%153 = load double, double* %25
%154 = call double @llvm.fmuladd.f64(double %152, double %153, double %150)
store double %154, double* %34
%155 = load double, double* %28
%156 = call double @log(double %155)
%157 = load double, double* %25
%158 = fdiv double %156, %157
%159 = load double, double* %30
%160 = load double, double* %25
%161 = call double @llvm.fmuladd.f64(double %159, double %160, double %158)
store double %161, double* %35
%162 = load i32, i32* %13
%163 = icmp sgt i32 %162, 0
br i1 %163, label %164, label %167
164: ; preds = %71
%165 = load i32, i32* %13
%166 = icmp sle i32 %165, 28
br label %167
167: ; preds = %164, %71
%168 = phi i1 [ false, %71 ], [ %166, %164 ]
%169 = zext i1 %168 to i32
%170 = call i32 (i32, ...) bitcast (i32 (...)* @assert to i32 (i32, ...)*)(i32 %169)
%171 = load i32, i32* %13
%172 = icmp slt i32 %171, 5
br i1 %172, label %173, label %208
173: ; preds = %167
%174 = load double, double* %17
%175 = load double, double* %28
%176 = load double, double* %29
%177 = load double, double* %30
%178 = fadd double %176, %177
%179 = call double @pow(double %175, double %178)
%180 = load i32, i32* %22
%181 = sitofp i32 %180 to double
%182 = load double, double* %35
%183 = fmul double %181, %182
%184 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %183)
%185 = sitofp i32 %184 to double
%186 = load double, double* %28
%187 = load double, double* %29
%188 = load double, double* %30
%189 = fsub double %187, %188
%190 = call double @pow(double %186, double %189)
%191 = load i32, i32* %22
%192 = sitofp i32 %191 to double
%193 = load double, double* %35
%194 = load i32, i32* %22
%195 = sitofp i32 %194 to double
%196 = fmul double 2.000000e+00, %195
%197 = load double, double* %30
%198 = fmul double %196, %197
%199 = load double, double* %25
%200 = fmul double %198, %199
%201 = fneg double %200
%202 = call double @llvm.fmuladd.f64(double %192, double %193, double %201)
%203 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %202)
%204 = sitofp i32 %203 to double
%205 = fmul double %190, %204
%206 = call double @llvm.fmuladd.f64(double %179, double %185, double %205)
%207 = fmul double %174, %206
store double %207, double* %12
br label %1377
208: ; preds = %167
%209 = load i32, i32* %13
%210 = icmp slt i32 %209, 7
br i1 %210, label %211, label %247
211: ; preds = %208
%212 = load double, double* %17
%213 = load double, double* %27
%214 = fmul double %212, %213
%215 = load i32, i32* %23
%216 = sitofp i32 %215 to double
%217 = load double, double* %32
%218 = load i32, i32* %23
%219 = sitofp i32 %218 to double
%220 = load double, double* %25
%221 = fmul double %219, %220
%222 = fneg double %221
%223 = call double @llvm.fmuladd.f64(double %216, double %217, double %222)
%224 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %223)
%225 = sitofp i32 %224 to double
%226 = load double, double* %17
%227 = load double, double* %27
%228 = fmul double %226, %227
%229 = load double, double* %28
%230 = load double, double* %29
%231 = fmul double 2.000000e+00, %230
%232 = call double @pow(double %229, double %231)
%233 = fmul double %228, %232
%234 = load i32, i32* %22
%235 = sitofp i32 %234 to double
%236 = load double, double* %34
%237 = load i32, i32* %22
%238 = sitofp i32 %237 to double
%239 = load double, double* %25
%240 = fmul double %238, %239
%241 = fneg double %240
%242 = call double @llvm.fmuladd.f64(double %235, double %236, double %241)
%243 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %242)
%244 = sitofp i32 %243 to double
%245 = fmul double %233, %244
%246 = call double @llvm.fmuladd.f64(double %214, double %225, double %245)
store double %246, double* %12
br label %1377
247: ; preds = %208
%248 = load i32, i32* %13
%249 = icmp slt i32 %248, 9
br i1 %249, label %250, label %277
250: ; preds = %247
%251 = load double, double* %14
%252 = load double, double* %26
%253 = fmul double %251, %252
%254 = load i32, i32* %23
%255 = sitofp i32 %254 to double
%256 = load double, double* %32
%257 = fmul double %255, %256
%258 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %257)
%259 = sitofp i32 %258 to double
%260 = load double, double* %14
%261 = load double, double* %26
%262 = fmul double %260, %261
%263 = load double, double* %28
%264 = load double, double* %29
%265 = fadd double %264, 1.000000e+00
%266 = fmul double 2.000000e+00, %265
%267 = call double @pow(double %263, double %266)
%268 = fmul double %262, %267
%269 = load i32, i32* %22
%270 = sitofp i32 %269 to double
%271 = load double, double* %34
%272 = fmul double %270, %271
%273 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %272)
%274 = sitofp i32 %273 to double
%275 = fmul double %268, %274
%276 = call double @llvm.fmuladd.f64(double %253, double %259, double %275)
store double %276, double* %12
br label %1377
277: ; preds = %247
%278 = load i32, i32* %13
%279 = icmp slt i32 %278, 11
br i1 %279, label %280, label %317
280: ; preds = %277
%281 = load double, double* %17
%282 = load double, double* %27
%283 = fmul double %281, %282
%284 = load i32, i32* %23
%285 = sitofp i32 %284 to double
%286 = load double, double* %32
%287 = load i32, i32* %23
%288 = sitofp i32 %287 to double
%289 = load double, double* %25
%290 = fmul double %288, %289
%291 = fneg double %290
%292 = call double @llvm.fmuladd.f64(double %285, double %286, double %291)
%293 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %292)
%294 = sitofp i32 %293 to double
%295 = load double, double* %17
%296 = load double, double* %27
%297 = fmul double %295, %296
%298 = load double, double* %28
%299 = load double, double* %29
%300 = fmul double 2.000000e+00, %299
%301 = call double @pow(double %298, double %300)
%302 = fmul double %297, %301
%303 = load i32, i32* %22
%304 = sitofp i32 %303 to double
%305 = load double, double* %34
%306 = load i32, i32* %22
%307 = sitofp i32 %306 to double
%308 = load double, double* %25
%309 = fmul double %307, %308
%310 = fneg double %309
%311 = call double @llvm.fmuladd.f64(double %304, double %305, double %310)
%312 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %311)
%313 = sitofp i32 %312 to double
%314 = fmul double %302, %313
%315 = fneg double %314
%316 = call double @llvm.fmuladd.f64(double %283, double %294, double %315)
store double %316, double* %12
br label %1377
317: ; preds = %277
%318 = load i32, i32* %13
%319 = icmp slt i32 %318, 13
br i1 %319, label %320, label %348
320: ; preds = %317
%321 = load double, double* %14
%322 = load double, double* %26
%323 = fmul double %321, %322
%324 = load i32, i32* %23
%325 = sitofp i32 %324 to double
%326 = load double, double* %32
%327 = fmul double %325, %326
%328 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %327)
%329 = sitofp i32 %328 to double
%330 = load double, double* %14
%331 = load double, double* %26
%332 = fmul double %330, %331
%333 = load double, double* %28
%334 = load double, double* %29
%335 = fadd double %334, 1.000000e+00
%336 = fmul double 2.000000e+00, %335
%337 = call double @pow(double %333, double %336)
%338 = fmul double %332, %337
%339 = load i32, i32* %22
%340 = sitofp i32 %339 to double
%341 = load double, double* %34
%342 = fmul double %340, %341
%343 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %342)
%344 = sitofp i32 %343 to double
%345 = fmul double %338, %344
%346 = fneg double %345
%347 = call double @llvm.fmuladd.f64(double %323, double %329, double %346)
store double %347, double* %12
br label %1377
348: ; preds = %317
%349 = load double, double* %15
%350 = load double, double* %16
%351 = fcmp ogt double %349, %350
br i1 %351, label %352, label %854
352: ; preds = %348
%353 = load i32, i32* %13
switch i32 %353, label %853 [
i32 13, label %354
i32 14, label %354
i32 15, label %375
i32 16, label %392
i32 17, label %403
i32 18, label %460
i32 19, label %512
i32 20, label %556
i32 21, label %594
i32 22, label %631
i32 24, label %631
i32 23, label %632
i32 25, label %660
i32 26, label %733
i32 27, label %770
i32 28, label %825
]
354: ; preds = %352, %352
%355 = load double, double* %17
%356 = load double, double* %27
%357 = fmul double %355, %356
%358 = load double, double* %28
%359 = load double, double* %29
%360 = fmul double 2.000000e+00, %359
%361 = call double @pow(double %358, double %360)
%362 = fmul double %357, %361
%363 = load i32, i32* %22
%364 = sitofp i32 %363 to double
%365 = load double, double* %33
%366 = load i32, i32* %22
%367 = sitofp i32 %366 to double
%368 = load double, double* %25
%369 = fmul double %367, %368
%370 = fneg double %369
%371 = call double @llvm.fmuladd.f64(double %364, double %365, double %370)
%372 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %371)
%373 = sitofp i32 %372 to double
%374 = fmul double %362, %373
store double %374, double* %12
br label %1377
375: ; preds = %352
%376 = load double, double* %14
%377 = load double, double* %26
%378 = fmul double %376, %377
%379 = load double, double* %28
%380 = load double, double* %29
%381 = fadd double %380, 1.000000e+00
%382 = fmul double 2.000000e+00, %381
%383 = call double @pow(double %379, double %382)
%384 = fmul double %378, %383
%385 = load i32, i32* %22
%386 = sitofp i32 %385 to double
%387 = load double, double* %33
%388 = fmul double %386, %387
%389 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %388)
%390 = sitofp i32 %389 to double
%391 = fmul double %384, %390
store double %391, double* %12
br label %1377
392: ; preds = %352
%393 = load double, double* %14
%394 = load double, double* %26
%395 = fmul double %393, %394
%396 = load i32, i32* %23
%397 = sitofp i32 %396 to double
%398 = load double, double* %31
%399 = fmul double %397, %398
%400 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %399)
%401 = sitofp i32 %400 to double
%402 = fmul double %395, %401
store double %402, double* %12
br label %1377
403: ; preds = %352
%404 = load double, double* %17
%405 = load double, double* %27
%406 = fmul double %404, %405
%407 = load i32, i32* %23
%408 = sitofp i32 %407 to double
%409 = load double, double* %32
%410 = load i32, i32* %23
%411 = sitofp i32 %410 to double
%412 = load double, double* %25
%413 = fmul double %411, %412
%414 = fneg double %413
%415 = call double @llvm.fmuladd.f64(double %408, double %409, double %414)
%416 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %415)
%417 = sitofp i32 %416 to double
%418 = load double, double* %17
%419 = load double, double* %27
%420 = fmul double %418, %419
%421 = load double, double* %28
%422 = load double, double* %29
%423 = fmul double 2.000000e+00, %422
%424 = call double @pow(double %421, double %423)
%425 = fmul double %420, %424
%426 = load i32, i32* %22
%427 = sitofp i32 %426 to double
%428 = load double, double* %33
%429 = load i32, i32* %22
%430 = sitofp i32 %429 to double
%431 = load double, double* %25
%432 = fmul double %430, %431
%433 = fneg double %432
%434 = call double @llvm.fmuladd.f64(double %427, double %428, double %433)
%435 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %434)
%436 = sitofp i32 %435 to double
%437 = fmul double %425, %436
%438 = fneg double %437
%439 = call double @llvm.fmuladd.f64(double %406, double %417, double %438)
%440 = load double, double* %17
%441 = load double, double* %27
%442 = fmul double %440, %441
%443 = load double, double* %28
%444 = load double, double* %29
%445 = fmul double 2.000000e+00, %444
%446 = call double @pow(double %443, double %445)
%447 = fmul double %442, %446
%448 = load i32, i32* %22
%449 = sitofp i32 %448 to double
%450 = load double, double* %34
%451 = load i32, i32* %22
%452 = sitofp i32 %451 to double
%453 = load double, double* %25
%454 = fmul double %452, %453
%455 = fneg double %454
%456 = call double @llvm.fmuladd.f64(double %449, double %450, double %455)
%457 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %456)
%458 = sitofp i32 %457 to double
%459 = call double @llvm.fmuladd.f64(double %447, double %458, double %439)
store double %459, double* %12
br label %1377
460: ; preds = %352
%461 = load double, double* %17
%462 = load double, double* %27
%463 = fmul double %461, %462
%464 = load i32, i32* %23
%465 = sitofp i32 %464 to double
%466 = load double, double* %31
%467 = load i32, i32* %23
%468 = sitofp i32 %467 to double
%469 = load double, double* %25
%470 = fmul double %468, %469
%471 = fneg double %470
%472 = call double @llvm.fmuladd.f64(double %465, double %466, double %471)
%473 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %472)
%474 = sitofp i32 %473 to double
%475 = load double, double* %17
%476 = load double, double* %27
%477 = fmul double %475, %476
%478 = load i32, i32* %23
%479 = sitofp i32 %478 to double
%480 = load double, double* %32
%481 = load i32, i32* %23
%482 = sitofp i32 %481 to double
%483 = load double, double* %25
%484 = fmul double %482, %483
%485 = fneg double %484
%486 = call double @llvm.fmuladd.f64(double %479, double %480, double %485)
%487 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %486)
%488 = sitofp i32 %487 to double
%489 = fmul double %477, %488
%490 = fneg double %489
%491 = call double @llvm.fmuladd.f64(double %463, double %474, double %490)
%492 = load double, double* %17
%493 = load double, double* %27
%494 = fmul double %492, %493
%495 = load double, double* %28
%496 = load double, double* %29
%497 = fmul double 2.000000e+00, %496
%498 = call double @pow(double %495, double %497)
%499 = fmul double %494, %498
%500 = load i32, i32* %22
%501 = sitofp i32 %500 to double
%502 = load double, double* %34
%503 = load i32, i32* %22
%504 = sitofp i32 %503 to double
%505 = load double, double* %25
%506 = fmul double %504, %505
%507 = fneg double %506
%508 = call double @llvm.fmuladd.f64(double %501, double %502, double %507)
%509 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %508)
%510 = sitofp i32 %509 to double
%511 = call double @llvm.fmuladd.f64(double %499, double %510, double %491)
store double %511, double* %12
br label %1377
512: ; preds = %352
%513 = load double, double* %14
%514 = load double, double* %26
%515 = fmul double %513, %514
%516 = load i32, i32* %23
%517 = sitofp i32 %516 to double
%518 = load double, double* %32
%519 = fmul double %517, %518
%520 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %519)
%521 = sitofp i32 %520 to double
%522 = load double, double* %14
%523 = load double, double* %26
%524 = fmul double %522, %523
%525 = load double, double* %28
%526 = load double, double* %29
%527 = fadd double %526, 1.000000e+00
%528 = fmul double 2.000000e+00, %527
%529 = call double @pow(double %525, double %528)
%530 = fmul double %524, %529
%531 = load i32, i32* %22
%532 = sitofp i32 %531 to double
%533 = load double, double* %33
%534 = fmul double %532, %533
%535 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %534)
%536 = sitofp i32 %535 to double
%537 = fmul double %530, %536
%538 = fneg double %537
%539 = call double @llvm.fmuladd.f64(double %515, double %521, double %538)
%540 = load double, double* %14
%541 = load double, double* %26
%542 = fmul double %540, %541
%543 = load double, double* %28
%544 = load double, double* %29
%545 = fadd double %544, 1.000000e+00
%546 = fmul double 2.000000e+00, %545
%547 = call double @pow(double %543, double %546)
%548 = fmul double %542, %547
%549 = load i32, i32* %22
%550 = sitofp i32 %549 to double
%551 = load double, double* %34
%552 = fmul double %550, %551
%553 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %552)
%554 = sitofp i32 %553 to double
%555 = call double @llvm.fmuladd.f64(double %548, double %554, double %539)
store double %555, double* %12
br label %1377
556: ; preds = %352
%557 = load double, double* %14
%558 = load double, double* %26
%559 = fmul double %557, %558
%560 = load i32, i32* %23
%561 = sitofp i32 %560 to double
%562 = load double, double* %31
%563 = fmul double %561, %562
%564 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %563)
%565 = sitofp i32 %564 to double
%566 = load double, double* %14
%567 = load double, double* %26
%568 = fmul double %566, %567
%569 = load i32, i32* %23
%570 = sitofp i32 %569 to double
%571 = load double, double* %32
%572 = fmul double %570, %571
%573 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %572)
%574 = sitofp i32 %573 to double
%575 = fmul double %568, %574
%576 = fneg double %575
%577 = call double @llvm.fmuladd.f64(double %559, double %565, double %576)
%578 = load double, double* %14
%579 = load double, double* %26
%580 = fmul double %578, %579
%581 = load double, double* %28
%582 = load double, double* %29
%583 = fadd double %582, 1.000000e+00
%584 = fmul double 2.000000e+00, %583
%585 = call double @pow(double %581, double %584)
%586 = fmul double %580, %585
%587 = load i32, i32* %22
%588 = sitofp i32 %587 to double
%589 = load double, double* %33
%590 = fmul double %588, %589
%591 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %590)
%592 = sitofp i32 %591 to double
%593 = call double @llvm.fmuladd.f64(double %586, double %592, double %577)
store double %593, double* %12
br label %1377
594: ; preds = %352
%595 = load double, double* %17
%596 = load double, double* %27
%597 = fmul double %595, %596
%598 = load i32, i32* %23
%599 = sitofp i32 %598 to double
%600 = load double, double* %31
%601 = load i32, i32* %23
%602 = sitofp i32 %601 to double
%603 = load double, double* %25
%604 = fmul double %602, %603
%605 = fneg double %604
%606 = call double @llvm.fmuladd.f64(double %599, double %600, double %605)
%607 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %606)
%608 = sitofp i32 %607 to double
%609 = load double, double* %17
%610 = load double, double* %27
%611 = fmul double %609, %610
%612 = load double, double* %28
%613 = load double, double* %29
%614 = fmul double 2.000000e+00, %613
%615 = call double @pow(double %612, double %614)
%616 = fmul double %611, %615
%617 = load i32, i32* %22
%618 = sitofp i32 %617 to double
%619 = load double, double* %33
%620 = load i32, i32* %22
%621 = sitofp i32 %620 to double
%622 = load double, double* %25
%623 = fmul double %621, %622
%624 = fneg double %623
%625 = call double @llvm.fmuladd.f64(double %618, double %619, double %624)
%626 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %625)
%627 = sitofp i32 %626 to double
%628 = fmul double %616, %627
%629 = fneg double %628
%630 = call double @llvm.fmuladd.f64(double %597, double %608, double %629)
store double %630, double* %12
br label %1377
631: ; preds = %352, %352
store double 0.000000e+00, double* %12
br label %1377
632: ; preds = %352
%633 = load double, double* %14
%634 = load double, double* %26
%635 = fmul double %633, %634
%636 = load i32, i32* %23
%637 = sitofp i32 %636 to double
%638 = load double, double* %31
%639 = fmul double %637, %638
%640 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %639)
%641 = sitofp i32 %640 to double
%642 = load double, double* %14
%643 = load double, double* %26
%644 = fmul double %642, %643
%645 = load double, double* %28
%646 = load double, double* %29
%647 = fadd double %646, 1.000000e+00
%648 = fmul double 2.000000e+00, %647
%649 = call double @pow(double %645, double %648)
%650 = fmul double %644, %649
%651 = load i32, i32* %22
%652 = sitofp i32 %651 to double
%653 = load double, double* %33
%654 = fmul double %652, %653
%655 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %654)
%656 = sitofp i32 %655 to double
%657 = fmul double %650, %656
%658 = fneg double %657
%659 = call double @llvm.fmuladd.f64(double %635, double %641, double %658)
store double %659, double* %12
br label %1377
660: ; preds = %352
%661 = load double, double* %17
%662 = load double, double* %27
%663 = fmul double %661, %662
%664 = load i32, i32* %23
%665 = sitofp i32 %664 to double
%666 = load double, double* %31
%667 = load i32, i32* %23
%668 = sitofp i32 %667 to double
%669 = load double, double* %25
%670 = fmul double %668, %669
%671 = fneg double %670
%672 = call double @llvm.fmuladd.f64(double %665, double %666, double %671)
%673 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %672)
%674 = sitofp i32 %673 to double
%675 = load double, double* %17
%676 = load double, double* %27
%677 = fmul double %675, %676
%678 = load i32, i32* %23
%679 = sitofp i32 %678 to double
%680 = load double, double* %32
%681 = load i32, i32* %23
%682 = sitofp i32 %681 to double
%683 = load double, double* %25
%684 = fmul double %682, %683
%685 = fneg double %684
%686 = call double @llvm.fmuladd.f64(double %679, double %680, double %685)
%687 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %686)
%688 = sitofp i32 %687 to double
%689 = fmul double %677, %688
%690 = fneg double %689
%691 = call double @llvm.fmuladd.f64(double %663, double %674, double %690)
%692 = load double, double* %17
%693 = load double, double* %27
%694 = fmul double %692, %693
%695 = load double, double* %28
%696 = load double, double* %29
%697 = fmul double 2.000000e+00, %696
%698 = call double @pow(double %695, double %697)
%699 = fmul double %694, %698
%700 = load i32, i32* %22
%701 = sitofp i32 %700 to double
%702 = load double, double* %33
%703 = load i32, i32* %22
%704 = sitofp i32 %703 to double
%705 = load double, double* %25
%706 = fmul double %704, %705
%707 = fneg double %706
%708 = call double @llvm.fmuladd.f64(double %701, double %702, double %707)
%709 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %708)
%710 = sitofp i32 %709 to double
%711 = call double @llvm.fmuladd.f64(double %699, double %710, double %691)
%712 = load double, double* %17
%713 = load double, double* %27
%714 = fmul double %712, %713
%715 = load double, double* %28
%716 = load double, double* %29
%717 = fmul double 2.000000e+00, %716
%718 = call double @pow(double %715, double %717)
%719 = fmul double %714, %718
%720 = load i32, i32* %22
%721 = sitofp i32 %720 to double
%722 = load double, double* %34
%723 = load i32, i32* %22
%724 = sitofp i32 %723 to double
%725 = load double, double* %25
%726 = fmul double %724, %725
%727 = fneg double %726
%728 = call double @llvm.fmuladd.f64(double %721, double %722, double %727)
%729 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %728)
%730 = sitofp i32 %729 to double
%731 = fneg double %719
%732 = call double @llvm.fmuladd.f64(double %731, double %730, double %711)
store double %732, double* %12
br label %1377
733: ; preds = %352
%734 = load double, double* %17
%735 = load double, double* %27
%736 = fmul double %734, %735
%737 = load i32, i32* %23
%738 = sitofp i32 %737 to double
%739 = load double, double* %32
%740 = load i32, i32* %23
%741 = sitofp i32 %740 to double
%742 = load double, double* %25
%743 = fmul double %741, %742
%744 = fneg double %743
%745 = call double @llvm.fmuladd.f64(double %738, double %739, double %744)
%746 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %745)
%747 = sitofp i32 %746 to double
%748 = load double, double* %17
%749 = load double, double* %27
%750 = fmul double %748, %749
%751 = load double, double* %28
%752 = load double, double* %29
%753 = fmul double 2.000000e+00, %752
%754 = call double @pow(double %751, double %753)
%755 = fmul double %750, %754
%756 = load i32, i32* %22
%757 = sitofp i32 %756 to double
%758 = load double, double* %34
%759 = load i32, i32* %22
%760 = sitofp i32 %759 to double
%761 = load double, double* %25
%762 = fmul double %760, %761
%763 = fneg double %762
%764 = call double @llvm.fmuladd.f64(double %757, double %758, double %763)
%765 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %764)
%766 = sitofp i32 %765 to double
%767 = fmul double %755, %766
%768 = fneg double %767
%769 = call double @llvm.fmuladd.f64(double %736, double %747, double %768)
store double %769, double* %12
br label %1377
770: ; preds = %352
%771 = load double, double* %14
%772 = load double, double* %26
%773 = fmul double %771, %772
%774 = load i32, i32* %23
%775 = sitofp i32 %774 to double
%776 = load double, double* %31
%777 = fmul double %775, %776
%778 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %777)
%779 = sitofp i32 %778 to double
%780 = load double, double* %14
%781 = load double, double* %26
%782 = fmul double %780, %781
%783 = load i32, i32* %23
%784 = sitofp i32 %783 to double
%785 = load double, double* %32
%786 = fmul double %784, %785
%787 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %786)
%788 = sitofp i32 %787 to double
%789 = fmul double %782, %788
%790 = fneg double %789
%791 = call double @llvm.fmuladd.f64(double %773, double %779, double %790)
%792 = load double, double* %14
%793 = load double, double* %26
%794 = fmul double %792, %793
%795 = load double, double* %28
%796 = load double, double* %29
%797 = fadd double %796, 1.000000e+00
%798 = fmul double 2.000000e+00, %797
%799 = call double @pow(double %795, double %798)
%800 = fmul double %794, %799
%801 = load i32, i32* %22
%802 = sitofp i32 %801 to double
%803 = load double, double* %33
%804 = fmul double %802, %803
%805 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %804)
%806 = sitofp i32 %805 to double
%807 = call double @llvm.fmuladd.f64(double %800, double %806, double %791)
%808 = load double, double* %14
%809 = load double, double* %26
%810 = fmul double %808, %809
%811 = load double, double* %28
%812 = load double, double* %29
%813 = fadd double %812, 1.000000e+00
%814 = fmul double 2.000000e+00, %813
%815 = call double @pow(double %811, double %814)
%816 = fmul double %810, %815
%817 = load i32, i32* %22
%818 = sitofp i32 %817 to double
%819 = load double, double* %34
%820 = fmul double %818, %819
%821 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %820)
%822 = sitofp i32 %821 to double
%823 = fneg double %816
%824 = call double @llvm.fmuladd.f64(double %823, double %822, double %807)
store double %824, double* %12
br label %1377
825: ; preds = %352
%826 = load double, double* %14
%827 = load double, double* %26
%828 = fmul double %826, %827
%829 = load i32, i32* %23
%830 = sitofp i32 %829 to double
%831 = load double, double* %32
%832 = fmul double %830, %831
%833 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %832)
%834 = sitofp i32 %833 to double
%835 = load double, double* %14
%836 = load double, double* %26
%837 = fmul double %835, %836
%838 = load double, double* %28
%839 = load double, double* %29
%840 = fadd double %839, 1.000000e+00
%841 = fmul double 2.000000e+00, %840
%842 = call double @pow(double %838, double %841)
%843 = fmul double %837, %842
%844 = load i32, i32* %22
%845 = sitofp i32 %844 to double
%846 = load double, double* %34
%847 = fmul double %845, %846
%848 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %847)
%849 = sitofp i32 %848 to double
%850 = fmul double %843, %849
%851 = fneg double %850
%852 = call double @llvm.fmuladd.f64(double %828, double %834, double %851)
store double %852, double* %12
br label %1377
853: ; preds = %352
unreachable
854: ; preds = %348
%855 = load double, double* %15
%856 = load double, double* %16
%857 = fcmp olt double %855, %856
br i1 %857, label %858, label %1376
858: ; preds = %854
%859 = load i32, i32* %13
switch i32 %859, label %1375 [
i32 13, label %860
i32 14, label %912
i32 15, label %969
i32 16, label %1007
i32 17, label %1051
i32 18, label %1067
i32 19, label %1088
i32 20, label %1099
i32 21, label %1116
i32 22, label %1153
i32 23, label %1226
i32 24, label %1254
i32 25, label %1309
i32 27, label %1309
i32 26, label %1310
i32 28, label %1347
]
860: ; preds = %858
%861 = load double, double* %17
%862 = load double, double* %27
%863 = fmul double %861, %862
%864 = load i32, i32* %23
%865 = sitofp i32 %864 to double
%866 = load double, double* %31
%867 = load i32, i32* %23
%868 = sitofp i32 %867 to double
%869 = load double, double* %25
%870 = fmul double %868, %869
%871 = fneg double %870
%872 = call double @llvm.fmuladd.f64(double %865, double %866, double %871)
%873 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %872)
%874 = sitofp i32 %873 to double
%875 = load double, double* %17
%876 = load double, double* %27
%877 = fmul double %875, %876
%878 = load i32, i32* %23
%879 = sitofp i32 %878 to double
%880 = load double, double* %32
%881 = load i32, i32* %23
%882 = sitofp i32 %881 to double
%883 = load double, double* %25
%884 = fmul double %882, %883
%885 = fneg double %884
%886 = call double @llvm.fmuladd.f64(double %879, double %880, double %885)
%887 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %886)
%888 = sitofp i32 %887 to double
%889 = fmul double %877, %888
%890 = fneg double %889
%891 = call double @llvm.fmuladd.f64(double %863, double %874, double %890)
%892 = load double, double* %17
%893 = load double, double* %27
%894 = fmul double %892, %893
%895 = load double, double* %28
%896 = load double, double* %29
%897 = fmul double 2.000000e+00, %896
%898 = call double @pow(double %895, double %897)
%899 = fmul double %894, %898
%900 = load i32, i32* %22
%901 = sitofp i32 %900 to double
%902 = load double, double* %34
%903 = load i32, i32* %22
%904 = sitofp i32 %903 to double
%905 = load double, double* %25
%906 = fmul double %904, %905
%907 = fneg double %906
%908 = call double @llvm.fmuladd.f64(double %901, double %902, double %907)
%909 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %908)
%910 = sitofp i32 %909 to double
%911 = call double @llvm.fmuladd.f64(double %899, double %910, double %891)
store double %911, double* %12
br label %1377
912: ; preds = %858
%913 = load double, double* %17
%914 = load double, double* %27
%915 = fmul double %913, %914
%916 = load i32, i32* %23
%917 = sitofp i32 %916 to double
%918 = load double, double* %32
%919 = load i32, i32* %23
%920 = sitofp i32 %919 to double
%921 = load double, double* %25
%922 = fmul double %920, %921
%923 = fneg double %922
%924 = call double @llvm.fmuladd.f64(double %917, double %918, double %923)
%925 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %924)
%926 = sitofp i32 %925 to double
%927 = load double, double* %17
%928 = load double, double* %27
%929 = fmul double %927, %928
%930 = load double, double* %28
%931 = load double, double* %29
%932 = fmul double 2.000000e+00, %931
%933 = call double @pow(double %930, double %932)
%934 = fmul double %929, %933
%935 = load i32, i32* %22
%936 = sitofp i32 %935 to double
%937 = load double, double* %33
%938 = load i32, i32* %22
%939 = sitofp i32 %938 to double
%940 = load double, double* %25
%941 = fmul double %939, %940
%942 = fneg double %941
%943 = call double @llvm.fmuladd.f64(double %936, double %937, double %942)
%944 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %943)
%945 = sitofp i32 %944 to double
%946 = fmul double %934, %945
%947 = fneg double %946
%948 = call double @llvm.fmuladd.f64(double %915, double %926, double %947)
%949 = load double, double* %17
%950 = load double, double* %27
%951 = fmul double %949, %950
%952 = load double, double* %28
%953 = load double, double* %29
%954 = fmul double 2.000000e+00, %953
%955 = call double @pow(double %952, double %954)
%956 = fmul double %951, %955
%957 = load i32, i32* %22
%958 = sitofp i32 %957 to double
%959 = load double, double* %34
%960 = load i32, i32* %22
%961 = sitofp i32 %960 to double
%962 = load double, double* %25
%963 = fmul double %961, %962
%964 = fneg double %963
%965 = call double @llvm.fmuladd.f64(double %958, double %959, double %964)
%966 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %965)
%967 = sitofp i32 %966 to double
%968 = call double @llvm.fmuladd.f64(double %956, double %967, double %948)
store double %968, double* %12
br label %1377
969: ; preds = %858
%970 = load double, double* %14
%971 = load double, double* %26
%972 = fmul double %970, %971
%973 = load i32, i32* %23
%974 = sitofp i32 %973 to double
%975 = load double, double* %31
%976 = fmul double %974, %975
%977 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %976)
%978 = sitofp i32 %977 to double
%979 = load double, double* %14
%980 = load double, double* %26
%981 = fmul double %979, %980
%982 = load i32, i32* %23
%983 = sitofp i32 %982 to double
%984 = load double, double* %32
%985 = fmul double %983, %984
%986 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %985)
%987 = sitofp i32 %986 to double
%988 = fmul double %981, %987
%989 = fneg double %988
%990 = call double @llvm.fmuladd.f64(double %972, double %978, double %989)
%991 = load double, double* %14
%992 = load double, double* %26
%993 = fmul double %991, %992
%994 = load double, double* %28
%995 = load double, double* %29
%996 = fadd double %995, 1.000000e+00
%997 = fmul double 2.000000e+00, %996
%998 = call double @pow(double %994, double %997)
%999 = fmul double %993, %998
%1000 = load i32, i32* %22
%1001 = sitofp i32 %1000 to double
%1002 = load double, double* %34
%1003 = fmul double %1001, %1002
%1004 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1003)
%1005 = sitofp i32 %1004 to double
%1006 = call double @llvm.fmuladd.f64(double %999, double %1005, double %990)
store double %1006, double* %12
br label %1377
1007: ; preds = %858
%1008 = load double, double* %14
%1009 = load double, double* %26
%1010 = fmul double %1008, %1009
%1011 = load i32, i32* %23
%1012 = sitofp i32 %1011 to double
%1013 = load double, double* %32
%1014 = fmul double %1012, %1013
%1015 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1014)
%1016 = sitofp i32 %1015 to double
%1017 = load double, double* %14
%1018 = load double, double* %26
%1019 = fmul double %1017, %1018
%1020 = load double, double* %28
%1021 = load double, double* %29
%1022 = fadd double %1021, 1.000000e+00
%1023 = fmul double 2.000000e+00, %1022
%1024 = call double @pow(double %1020, double %1023)
%1025 = fmul double %1019, %1024
%1026 = load i32, i32* %22
%1027 = sitofp i32 %1026 to double
%1028 = load double, double* %33
%1029 = fmul double %1027, %1028
%1030 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1029)
%1031 = sitofp i32 %1030 to double
%1032 = fmul double %1025, %1031
%1033 = fneg double %1032
%1034 = call double @llvm.fmuladd.f64(double %1010, double %1016, double %1033)
%1035 = load double, double* %14
%1036 = load double, double* %26
%1037 = fmul double %1035, %1036
%1038 = load double, double* %28
%1039 = load double, double* %29
%1040 = fadd double %1039, 1.000000e+00
%1041 = fmul double 2.000000e+00, %1040
%1042 = call double @pow(double %1038, double %1041)
%1043 = fmul double %1037, %1042
%1044 = load i32, i32* %22
%1045 = sitofp i32 %1044 to double
%1046 = load double, double* %34
%1047 = fmul double %1045, %1046
%1048 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1047)
%1049 = sitofp i32 %1048 to double
%1050 = call double @llvm.fmuladd.f64(double %1043, double %1049, double %1034)
store double %1050, double* %12
br label %1377
1051: ; preds = %858
%1052 = load double, double* %17
%1053 = load double, double* %27
%1054 = fmul double %1052, %1053
%1055 = load i32, i32* %23
%1056 = sitofp i32 %1055 to double
%1057 = load double, double* %31
%1058 = load i32, i32* %23
%1059 = sitofp i32 %1058 to double
%1060 = load double, double* %25
%1061 = fmul double %1059, %1060
%1062 = fneg double %1061
%1063 = call double @llvm.fmuladd.f64(double %1056, double %1057, double %1062)
%1064 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1063)
%1065 = sitofp i32 %1064 to double
%1066 = fmul double %1054, %1065
store double %1066, double* %12
br label %1377
1067: ; preds = %858
%1068 = load double, double* %17
%1069 = load double, double* %27
%1070 = fmul double %1068, %1069
%1071 = load double, double* %28
%1072 = load double, double* %29
%1073 = fmul double 2.000000e+00, %1072
%1074 = call double @pow(double %1071, double %1073)
%1075 = fmul double %1070, %1074
%1076 = load i32, i32* %22
%1077 = sitofp i32 %1076 to double
%1078 = load double, double* %33
%1079 = load i32, i32* %22
%1080 = sitofp i32 %1079 to double
%1081 = load double, double* %25
%1082 = fmul double %1080, %1081
%1083 = fneg double %1082
%1084 = call double @llvm.fmuladd.f64(double %1077, double %1078, double %1083)
%1085 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1084)
%1086 = sitofp i32 %1085 to double
%1087 = fmul double %1075, %1086
store double %1087, double* %12
br label %1377
1088: ; preds = %858
%1089 = load double, double* %14
%1090 = load double, double* %26
%1091 = fmul double %1089, %1090
%1092 = load i32, i32* %23
%1093 = sitofp i32 %1092 to double
%1094 = load double, double* %31
%1095 = fmul double %1093, %1094
%1096 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1095)
%1097 = sitofp i32 %1096 to double
%1098 = fmul double %1091, %1097
store double %1098, double* %12
br label %1377
1099: ; preds = %858
%1100 = load double, double* %14
%1101 = load double, double* %26
%1102 = fmul double %1100, %1101
%1103 = load double, double* %28
%1104 = load double, double* %29
%1105 = fadd double %1104, 1.000000e+00
%1106 = fmul double 2.000000e+00, %1105
%1107 = call double @pow(double %1103, double %1106)
%1108 = fmul double %1102, %1107
%1109 = load i32, i32* %22
%1110 = sitofp i32 %1109 to double
%1111 = load double, double* %33
%1112 = fmul double %1110, %1111
%1113 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1112)
%1114 = sitofp i32 %1113 to double
%1115 = fmul double %1108, %1114
store double %1115, double* %12
br label %1377
1116: ; preds = %858
%1117 = load double, double* %17
%1118 = load double, double* %27
%1119 = fmul double %1117, %1118
%1120 = load i32, i32* %23
%1121 = sitofp i32 %1120 to double
%1122 = load double, double* %32
%1123 = load i32, i32* %23
%1124 = sitofp i32 %1123 to double
%1125 = load double, double* %25
%1126 = fmul double %1124, %1125
%1127 = fneg double %1126
%1128 = call double @llvm.fmuladd.f64(double %1121, double %1122, double %1127)
%1129 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1128)
%1130 = sitofp i32 %1129 to double
%1131 = load double, double* %17
%1132 = load double, double* %27
%1133 = fmul double %1131, %1132
%1134 = load double, double* %28
%1135 = load double, double* %29
%1136 = fmul double 2.000000e+00, %1135
%1137 = call double @pow(double %1134, double %1136)
%1138 = fmul double %1133, %1137
%1139 = load i32, i32* %22
%1140 = sitofp i32 %1139 to double
%1141 = load double, double* %34
%1142 = load i32, i32* %22
%1143 = sitofp i32 %1142 to double
%1144 = load double, double* %25
%1145 = fmul double %1143, %1144
%1146 = fneg double %1145
%1147 = call double @llvm.fmuladd.f64(double %1140, double %1141, double %1146)
%1148 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1147)
%1149 = sitofp i32 %1148 to double
%1150 = fmul double %1138, %1149
%1151 = fneg double %1150
%1152 = call double @llvm.fmuladd.f64(double %1119, double %1130, double %1151)
store double %1152, double* %12
br label %1377
1153: ; preds = %858
%1154 = load double, double* %17
%1155 = load double, double* %27
%1156 = fmul double %1154, %1155
%1157 = load i32, i32* %23
%1158 = sitofp i32 %1157 to double
%1159 = load double, double* %31
%1160 = load i32, i32* %23
%1161 = sitofp i32 %1160 to double
%1162 = load double, double* %25
%1163 = fmul double %1161, %1162
%1164 = fneg double %1163
%1165 = call double @llvm.fmuladd.f64(double %1158, double %1159, double %1164)
%1166 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1165)
%1167 = sitofp i32 %1166 to double
%1168 = load double, double* %17
%1169 = load double, double* %27
%1170 = fmul double %1168, %1169
%1171 = load i32, i32* %23
%1172 = sitofp i32 %1171 to double
%1173 = load double, double* %32
%1174 = load i32, i32* %23
%1175 = sitofp i32 %1174 to double
%1176 = load double, double* %25
%1177 = fmul double %1175, %1176
%1178 = fneg double %1177
%1179 = call double @llvm.fmuladd.f64(double %1172, double %1173, double %1178)
%1180 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1179)
%1181 = sitofp i32 %1180 to double
%1182 = fmul double %1170, %1181
%1183 = fneg double %1182
%1184 = call double @llvm.fmuladd.f64(double %1156, double %1167, double %1183)
%1185 = load double, double* %17
%1186 = load double, double* %27
%1187 = fmul double %1185, %1186
%1188 = load double, double* %28
%1189 = load double, double* %29
%1190 = fmul double 2.000000e+00, %1189
%1191 = call double @pow(double %1188, double %1190)
%1192 = fmul double %1187, %1191
%1193 = load i32, i32* %22
%1194 = sitofp i32 %1193 to double
%1195 = load double, double* %33
%1196 = load i32, i32* %22
%1197 = sitofp i32 %1196 to double
%1198 = load double, double* %25
%1199 = fmul double %1197, %1198
%1200 = fneg double %1199
%1201 = call double @llvm.fmuladd.f64(double %1194, double %1195, double %1200)
%1202 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1201)
%1203 = sitofp i32 %1202 to double
%1204 = call double @llvm.fmuladd.f64(double %1192, double %1203, double %1184)
%1205 = load double, double* %17
%1206 = load double, double* %27
%1207 = fmul double %1205, %1206
%1208 = load double, double* %28
%1209 = load double, double* %29
%1210 = fmul double 2.000000e+00, %1209
%1211 = call double @pow(double %1208, double %1210)
%1212 = fmul double %1207, %1211
%1213 = load i32, i32* %22
%1214 = sitofp i32 %1213 to double
%1215 = load double, double* %34
%1216 = load i32, i32* %22
%1217 = sitofp i32 %1216 to double
%1218 = load double, double* %25
%1219 = fmul double %1217, %1218
%1220 = fneg double %1219
%1221 = call double @llvm.fmuladd.f64(double %1214, double %1215, double %1220)
%1222 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1221)
%1223 = sitofp i32 %1222 to double
%1224 = fneg double %1212
%1225 = call double @llvm.fmuladd.f64(double %1224, double %1223, double %1204)
store double %1225, double* %12
br label %1377
1226: ; preds = %858
%1227 = load double, double* %14
%1228 = load double, double* %26
%1229 = fmul double %1227, %1228
%1230 = load i32, i32* %23
%1231 = sitofp i32 %1230 to double
%1232 = load double, double* %32
%1233 = fmul double %1231, %1232
%1234 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1233)
%1235 = sitofp i32 %1234 to double
%1236 = load double, double* %14
%1237 = load double, double* %26
%1238 = fmul double %1236, %1237
%1239 = load double, double* %28
%1240 = load double, double* %29
%1241 = fadd double %1240, 1.000000e+00
%1242 = fmul double 2.000000e+00, %1241
%1243 = call double @pow(double %1239, double %1242)
%1244 = fmul double %1238, %1243
%1245 = load i32, i32* %22
%1246 = sitofp i32 %1245 to double
%1247 = load double, double* %34
%1248 = fmul double %1246, %1247
%1249 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1248)
%1250 = sitofp i32 %1249 to double
%1251 = fmul double %1244, %1250
%1252 = fneg double %1251
%1253 = call double @llvm.fmuladd.f64(double %1229, double %1235, double %1252)
store double %1253, double* %12
br label %1377
1254: ; preds = %858
%1255 = load double, double* %14
%1256 = load double, double* %26
%1257 = fmul double %1255, %1256
%1258 = load i32, i32* %23
%1259 = sitofp i32 %1258 to double
%1260 = load double, double* %31
%1261 = fmul double %1259, %1260
%1262 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1261)
%1263 = sitofp i32 %1262 to double
%1264 = load double, double* %14
%1265 = load double, double* %26
%1266 = fmul double %1264, %1265
%1267 = load i32, i32* %23
%1268 = sitofp i32 %1267 to double
%1269 = load double, double* %32
%1270 = fmul double %1268, %1269
%1271 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1270)
%1272 = sitofp i32 %1271 to double
%1273 = fmul double %1266, %1272
%1274 = fneg double %1273
%1275 = call double @llvm.fmuladd.f64(double %1257, double %1263, double %1274)
%1276 = load double, double* %14
%1277 = load double, double* %26
%1278 = fmul double %1276, %1277
%1279 = load double, double* %28
%1280 = load double, double* %29
%1281 = fadd double %1280, 1.000000e+00
%1282 = fmul double 2.000000e+00, %1281
%1283 = call double @pow(double %1279, double %1282)
%1284 = fmul double %1278, %1283
%1285 = load i32, i32* %22
%1286 = sitofp i32 %1285 to double
%1287 = load double, double* %33
%1288 = fmul double %1286, %1287
%1289 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1288)
%1290 = sitofp i32 %1289 to double
%1291 = call double @llvm.fmuladd.f64(double %1284, double %1290, double %1275)
%1292 = load double, double* %14
%1293 = load double, double* %26
%1294 = fmul double %1292, %1293
%1295 = load double, double* %28
%1296 = load double, double* %29
%1297 = fadd double %1296, 1.000000e+00
%1298 = fmul double 2.000000e+00, %1297
%1299 = call double @pow(double %1295, double %1298)
%1300 = fmul double %1294, %1299
%1301 = load i32, i32* %22
%1302 = sitofp i32 %1301 to double
%1303 = load double, double* %34
%1304 = fmul double %1302, %1303
%1305 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1304)
%1306 = sitofp i32 %1305 to double
%1307 = fneg double %1300
%1308 = call double @llvm.fmuladd.f64(double %1307, double %1306, double %1291)
store double %1308, double* %12
br label %1377
1309: ; preds = %858, %858
store double 0.000000e+00, double* %12
br label %1377
1310: ; preds = %858
%1311 = load double, double* %17
%1312 = load double, double* %27
%1313 = fmul double %1311, %1312
%1314 = load i32, i32* %23
%1315 = sitofp i32 %1314 to double
%1316 = load double, double* %31
%1317 = load i32, i32* %23
%1318 = sitofp i32 %1317 to double
%1319 = load double, double* %25
%1320 = fmul double %1318, %1319
%1321 = fneg double %1320
%1322 = call double @llvm.fmuladd.f64(double %1315, double %1316, double %1321)
%1323 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1322)
%1324 = sitofp i32 %1323 to double
%1325 = load double, double* %17
%1326 = load double, double* %27
%1327 = fmul double %1325, %1326
%1328 = load double, double* %28
%1329 = load double, double* %29
%1330 = fmul double 2.000000e+00, %1329
%1331 = call double @pow(double %1328, double %1330)
%1332 = fmul double %1327, %1331
%1333 = load i32, i32* %22
%1334 = sitofp i32 %1333 to double
%1335 = load double, double* %33
%1336 = load i32, i32* %22
%1337 = sitofp i32 %1336 to double
%1338 = load double, double* %25
%1339 = fmul double %1337, %1338
%1340 = fneg double %1339
%1341 = call double @llvm.fmuladd.f64(double %1334, double %1335, double %1340)
%1342 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1341)
%1343 = sitofp i32 %1342 to double
%1344 = fmul double %1332, %1343
%1345 = fneg double %1344
%1346 = call double @llvm.fmuladd.f64(double %1313, double %1324, double %1345)
store double %1346, double* %12
br label %1377
1347: ; preds = %858
%1348 = load double, double* %14
%1349 = load double, double* %26
%1350 = fmul double %1348, %1349
%1351 = load i32, i32* %23
%1352 = sitofp i32 %1351 to double
%1353 = load double, double* %31
%1354 = fmul double %1352, %1353
%1355 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1354)
%1356 = sitofp i32 %1355 to double
%1357 = load double, double* %14
%1358 = load double, double* %26
%1359 = fmul double %1357, %1358
%1360 = load double, double* %28
%1361 = load double, double* %29
%1362 = fadd double %1361, 1.000000e+00
%1363 = fmul double 2.000000e+00, %1362
%1364 = call double @pow(double %1360, double %1363)
%1365 = fmul double %1359, %1364
%1366 = load i32, i32* %22
%1367 = sitofp i32 %1366 to double
%1368 = load double, double* %33
%1369 = fmul double %1367, %1368
%1370 = call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %1369)
%1371 = sitofp i32 %1370 to double
%1372 = fmul double %1365, %1371
%1373 = fneg double %1372
%1374 = call double @llvm.fmuladd.f64(double %1350, double %1356, double %1373)
store double %1374, double* %12
br label %1377
1375: ; preds = %858
unreachable
1376: ; preds = %854
unreachable
1377: ; preds = %1347, %1310, %1309, %1254, %1226, %1153, %1116, %1099, %1088, %1067, %1051, %1007, %969, %912, %860, %825, %770, %733, %660, %632, %631, %594, %556, %512, %460, %403, %392, %375, %354, %320, %280, %250, %211, %173
%1378 = load double, double* %12
ret double %1378
}

LLVM IR (-O2):
define double @BinaryBarrier(i32 %0, double %1, double %2, double %3, double %4, double %5, double %6, double %7, double %8, i32 %9, i32 %10) {
%12 = fcmp ord double %1, 0.000000e+00
%13 = fcmp oge double %1, 0x3EB0C6F7A0B5ED8D
%14 = and i1 %12, %13
%15 = fcmp ole double %1, 1.000000e+12
%16 = and i1 %15, %14
%17 = zext i1 %16 to i32
%18 = tail call i32 (i32, ...) bitcast (i32 (...)* @assert to i32 (i32, ...)*)(i32 %17)
%19 = fcmp ord double %2, 0.000000e+00
%20 = fcmp oge double %2, 0x3EB0C6F7A0B5ED8D
%21 = and i1 %19, %20
%22 = fcmp ole double %2, 1.000000e+12
%23 = and i1 %22, %21
%24 = zext i1 %23 to i32
%25 = tail call i32 (i32, ...) bitcast (i32 (...)* @assert to i32 (i32, ...)*)(i32 %24)
%26 = fcmp ord double %5, 0.000000e+00
%27 = fcmp oge double %5, 0x3F2596179C29D2CE
%28 = and i1 %26, %27
%29 = fcmp ole double %5, 2.000000e+01
%30 = and i1 %29, %28
%31 = zext i1 %30 to i32
%32 = tail call i32 (i32, ...) bitcast (i32 (...)* @assert to i32 (i32, ...)*)(i32 %31)
%33 = tail call double @sqrt(double %5)
%34 = fmul double %33, %8
%35 = fsub double %7, %6
%36 = fmul double %35, %5
%37 = tail call double @exp(double %36)
%38 = fneg double %6
%39 = fmul double %38, %5
%40 = tail call double @exp(double %39)
%41 = fdiv double %3, %1
%42 = fmul double %8, %8
%43 = fmul double %42, 5.000000e-01
%44 = fsub double %7, %43
%45 = fdiv double %44, %42
%46 = fmul double %6, 2.000000e+00
%47 = fdiv double %46, %42
%48 = tail call double @llvm.fmuladd.f64(double %45, double %45, double %47)
%49 = tail call double @sqrt(double %48)
%50 = fdiv double %1, %2
%51 = tail call double @log(double %50)
%52 = fdiv double %51, %34
%53 = fadd double %45, 1.000000e+00
%54 = tail call double @llvm.fmuladd.f64(double %53, double %34, double %52)
%55 = fdiv double %1, %3
%56 = tail call double @log(double %55)
%57 = fdiv double %56, %34
%58 = tail call double @llvm.fmuladd.f64(double %53, double %34, double %57)
%59 = fmul double %3, %3
%60 = fmul double %1, %2
%61 = fdiv double %59, %60
%62 = tail call double @log(double %61)
%63 = fdiv double %62, %34
%64 = tail call double @llvm.fmuladd.f64(double %53, double %34, double %63)
%65 = tail call double @log(double %41)
%66 = fdiv double %65, %34
%67 = tail call double @llvm.fmuladd.f64(double %53, double %34, double %66)
%68 = tail call double @log(double %41)
%69 = fdiv double %68, %34
%70 = tail call double @llvm.fmuladd.f64(double %49, double %34, double %69)
%71 = add i32 %0, -1
%72 = icmp ult i32 %71, 28
%73 = zext i1 %72 to i32
%74 = tail call i32 (i32, ...) bitcast (i32 (...)* @assert to i32 (i32, ...)*)(i32 %73)
%75 = icmp slt i32 %0, 5
br i1 %75, label %76, label %94
76: ; preds = %11
%77 = fadd double %45, %49
%78 = tail call double @pow(double %41, double %77)
%79 = sitofp i32 %9 to double
%80 = fmul double %70, %79
%81 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %80)
%82 = sitofp i32 %81 to double
%83 = fsub double %45, %49
%84 = tail call double @pow(double %41, double %83)
%85 = fmul double %79, -2.000000e+00
%86 = fmul double %85, %49
%87 = fmul double %34, %86
%88 = tail call double @llvm.fmuladd.f64(double %79, double %70, double %87)
%89 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %88)
%90 = sitofp i32 %89 to double
%91 = fmul double %84, %90
%92 = tail call double @llvm.fmuladd.f64(double %78, double %82, double %91)
%93 = fmul double %92, %4
br label %676
94: ; preds = %11
%95 = icmp ult i32 %0, 7
br i1 %95, label %96, label %114
96: ; preds = %94
%97 = fmul double %40, %4
%98 = sitofp i32 %10 to double
%99 = fneg double %34
%100 = fmul double %98, %99
%101 = tail call double @llvm.fmuladd.f64(double %98, double %58, double %100)
%102 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %101)
%103 = sitofp i32 %102 to double
%104 = fmul double %45, 2.000000e+00
%105 = tail call double @pow(double %41, double %104)
%106 = fmul double %97, %105
%107 = sitofp i32 %9 to double
%108 = fmul double %107, %99
%109 = tail call double @llvm.fmuladd.f64(double %107, double %67, double %108)
%110 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %109)
%111 = sitofp i32 %110 to double
%112 = fmul double %106, %111
%113 = tail call double @llvm.fmuladd.f64(double %97, double %103, double %112)
br label %676
114: ; preds = %94
%115 = icmp ult i32 %0, 9
br i1 %115, label %116, label %131
116: ; preds = %114
%117 = fmul double %37, %1
%118 = sitofp i32 %10 to double
%119 = fmul double %58, %118
%120 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %119)
%121 = sitofp i32 %120 to double
%122 = fmul double %53, 2.000000e+00
%123 = tail call double @pow(double %41, double %122)
%124 = fmul double %117, %123
%125 = sitofp i32 %9 to double
%126 = fmul double %67, %125
%127 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %126)
%128 = sitofp i32 %127 to double
%129 = fmul double %124, %128
%130 = tail call double @llvm.fmuladd.f64(double %117, double %121, double %129)
br label %676
131: ; preds = %114
%132 = icmp ult i32 %0, 11
br i1 %132, label %133, label %152
133: ; preds = %131
%134 = fmul double %40, %4
%135 = sitofp i32 %10 to double
%136 = fneg double %34
%137 = fmul double %135, %136
%138 = tail call double @llvm.fmuladd.f64(double %135, double %58, double %137)
%139 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %138)
%140 = sitofp i32 %139 to double
%141 = fmul double %45, 2.000000e+00
%142 = tail call double @pow(double %41, double %141)
%143 = sitofp i32 %9 to double
%144 = fmul double %143, %136
%145 = tail call double @llvm.fmuladd.f64(double %143, double %67, double %144)
%146 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %145)
%147 = sitofp i32 %146 to double
%148 = fneg double %134
%149 = fmul double %142, %148
%150 = fmul double %149, %147
%151 = tail call double @llvm.fmuladd.f64(double %134, double %140, double %150)
br label %676
152: ; preds = %131
%153 = icmp ult i32 %0, 13
br i1 %153, label %154, label %170
154: ; preds = %152
%155 = fmul double %37, %1
%156 = sitofp i32 %10 to double
%157 = fmul double %58, %156
%158 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %157)
%159 = sitofp i32 %158 to double
%160 = fmul double %53, 2.000000e+00
%161 = tail call double @pow(double %41, double %160)
%162 = sitofp i32 %9 to double
%163 = fmul double %67, %162
%164 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %163)
%165 = sitofp i32 %164 to double
%166 = fneg double %155
%167 = fmul double %161, %166
%168 = fmul double %167, %165
%169 = tail call double @llvm.fmuladd.f64(double %155, double %159, double %168)
br label %676
170: ; preds = %152
%171 = fcmp ogt double %2, %3
br i1 %171, label %172, label %418
172: ; preds = %170
switch i32 %0, label %417 [
i32 13, label %173
i32 14, label %173
i32 15, label %185
i32 16, label %195
i32 17, label %202
i32 18, label %227
i32 19, label %250
i32 20, label %272
i32 21, label %292
i32 22, label %676
i32 24, label %676
i32 23, label %311
i32 25, label %327
i32 26, label %356
i32 27, label %375
i32 28, label %401
]
173: ; preds = %172, %172
%174 = fmul double %40, %4
%175 = fmul double %45, 2.000000e+00
%176 = tail call double @pow(double %41, double %175)
%177 = fmul double %174, %176
%178 = sitofp i32 %9 to double
%179 = fneg double %34
%180 = fmul double %178, %179
%181 = tail call double @llvm.fmuladd.f64(double %178, double %64, double %180)
%182 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %181)
%183 = sitofp i32 %182 to double
%184 = fmul double %177, %183
br label %676
185: ; preds = %172
%186 = fmul double %37, %1
%187 = fmul double %53, 2.000000e+00
%188 = tail call double @pow(double %41, double %187)
%189 = fmul double %186, %188
%190 = sitofp i32 %9 to double
%191 = fmul double %64, %190
%192 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %191)
%193 = sitofp i32 %192 to double
%194 = fmul double %189, %193
br label %676
195: ; preds = %172
%196 = fmul double %37, %1
%197 = sitofp i32 %10 to double
%198 = fmul double %54, %197
%199 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %198)
%200 = sitofp i32 %199 to double
%201 = fmul double %196, %200
br label %676
202: ; preds = %172
%203 = fmul double %40, %4
%204 = sitofp i32 %10 to double
%205 = fneg double %34
%206 = fmul double %204, %205
%207 = tail call double @llvm.fmuladd.f64(double %204, double %58, double %206)
%208 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %207)
%209 = sitofp i32 %208 to double
%210 = fmul double %45, 2.000000e+00
%211 = tail call double @pow(double %41, double %210)
%212 = sitofp i32 %9 to double
%213 = fmul double %212, %205
%214 = tail call double @llvm.fmuladd.f64(double %212, double %64, double %213)
%215 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %214)
%216 = sitofp i32 %215 to double
%217 = fneg double %203
%218 = fmul double %211, %217
%219 = fmul double %218, %216
%220 = tail call double @llvm.fmuladd.f64(double %203, double %209, double %219)
%221 = tail call double @pow(double %41, double %210)
%222 = fmul double %203, %221
%223 = tail call double @llvm.fmuladd.f64(double %212, double %67, double %213)
%224 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %223)
%225 = sitofp i32 %224 to double
%226 = tail call double @llvm.fmuladd.f64(double %222, double %225, double %220)
br label %676
227: ; preds = %172
%228 = fmul double %40, %4
%229 = sitofp i32 %10 to double
%230 = fneg double %34
%231 = fmul double %229, %230
%232 = tail call double @llvm.fmuladd.f64(double %229, double %54, double %231)
%233 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %232)
%234 = sitofp i32 %233 to double
%235 = tail call double @llvm.fmuladd.f64(double %229, double %58, double %231)
%236 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %235)
%237 = sitofp i32 %236 to double
%238 = fneg double %228
%239 = fmul double %238, %237
%240 = tail call double @llvm.fmuladd.f64(double %228, double %234, double %239)
%241 = fmul double %45, 2.000000e+00
%242 = tail call double @pow(double %41, double %241)
%243 = fmul double %228, %242
%244 = sitofp i32 %9 to double
%245 = fmul double %244, %230
%246 = tail call double @llvm.fmuladd.f64(double %244, double %67, double %245)
%247 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %246)
%248 = sitofp i32 %247 to double
%249 = tail call double @llvm.fmuladd.f64(double %243, double %248, double %240)
br label %676
250: ; preds = %172
%251 = fmul double %37, %1
%252 = sitofp i32 %10 to double
%253 = fmul double %58, %252
%254 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %253)
%255 = sitofp i32 %254 to double
%256 = fmul double %53, 2.000000e+00
%257 = tail call double @pow(double %41, double %256)
%258 = sitofp i32 %9 to double
%259 = fmul double %64, %258
%260 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %259)
%261 = sitofp i32 %260 to double
%262 = fneg double %251
%263 = fmul double %257, %262
%264 = fmul double %263, %261
%265 = tail call double @llvm.fmuladd.f64(double %251, double %255, double %264)
%266 = tail call double @pow(double %41, double %256)
%267 = fmul double %251, %266
%268 = fmul double %67, %258
%269 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %268)
%270 = sitofp i32 %269 to double
%271 = tail call double @llvm.fmuladd.f64(double %267, double %270, double %265)
br label %676
272: ; preds = %172
%273 = fmul double %37, %1
%274 = sitofp i32 %10 to double
%275 = fmul double %54, %274
%276 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %275)
%277 = sitofp i32 %276 to double
%278 = fmul double %58, %274
%279 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %278)
%280 = sitofp i32 %279 to double
%281 = fneg double %273
%282 = fmul double %281, %280
%283 = tail call double @llvm.fmuladd.f64(double %273, double %277, double %282)
%284 = fmul double %53, 2.000000e+00
%285 = tail call double @pow(double %41, double %284)
%286 = fmul double %273, %285
%287 = sitofp i32 %9 to double
%288 = fmul double %64, %287
%289 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %288)
%290 = sitofp i32 %289 to double
%291 = tail call double @llvm.fmuladd.f64(double %286, double %290, double %283)
br label %676
292: ; preds = %172
%293 = fmul double %40, %4
%294 = sitofp i32 %10 to double
%295 = fneg double %34
%296 = fmul double %294, %295
%297 = tail call double @llvm.fmuladd.f64(double %294, double %54, double %296)
%298 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %297)
%299 = sitofp i32 %298 to double
%300 = fmul double %45, 2.000000e+00
%301 = tail call double @pow(double %41, double %300)
%302 = sitofp i32 %9 to double
%303 = fmul double %302, %295
%304 = tail call double @llvm.fmuladd.f64(double %302, double %64, double %303)
%305 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %304)
%306 = sitofp i32 %305 to double
%307 = fneg double %293
%308 = fmul double %301, %307
%309 = fmul double %308, %306
%310 = tail call double @llvm.fmuladd.f64(double %293, double %299, double %309)
br label %676
311: ; preds = %172
%312 = fmul double %37, %1
%313 = sitofp i32 %10 to double
%314 = fmul double %54, %313
%315 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %314)
%316 = sitofp i32 %315 to double
%317 = fmul double %53, 2.000000e+00
%318 = tail call double @pow(double %41, double %317)
%319 = sitofp i32 %9 to double
%320 = fmul double %64, %319
%321 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %320)
%322 = sitofp i32 %321 to double
%323 = fneg double %312
%324 = fmul double %318, %323
%325 = fmul double %324, %322
%326 = tail call double @llvm.fmuladd.f64(double %312, double %316, double %325)
br label %676
327: ; preds = %172
%328 = fmul double %40, %4
%329 = sitofp i32 %10 to double
%330 = fneg double %34
%331 = fmul double %329, %330
%332 = tail call double @llvm.fmuladd.f64(double %329, double %54, double %331)
%333 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %332)
%334 = sitofp i32 %333 to double
%335 = tail call double @llvm.fmuladd.f64(double %329, double %58, double %331)
%336 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %335)
%337 = sitofp i32 %336 to double
%338 = fneg double %328
%339 = fmul double %338, %337
%340 = tail call double @llvm.fmuladd.f64(double %328, double %334, double %339)
%341 = fmul double %45, 2.000000e+00
%342 = tail call double @pow(double %41, double %341)
%343 = fmul double %328, %342
%344 = sitofp i32 %9 to double
%345 = fmul double %344, %330
%346 = tail call double @llvm.fmuladd.f64(double %344, double %64, double %345)
%347 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %346)
%348 = sitofp i32 %347 to double
%349 = tail call double @llvm.fmuladd.f64(double %343, double %348, double %340)
%350 = tail call double @pow(double %41, double %341)
%351 = tail call double @llvm.fmuladd.f64(double %344, double %67, double %345)
%352 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %351)
%353 = sitofp i32 %352 to double
%354 = fmul double %350, %338
%355 = tail call double @llvm.fmuladd.f64(double %354, double %353, double %349)
br label %676
356: ; preds = %172
%357 = fmul double %40, %4
%358 = sitofp i32 %10 to double
%359 = fneg double %34
%360 = fmul double %358, %359
%361 = tail call double @llvm.fmuladd.f64(double %358, double %58, double %360)
%362 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %361)
%363 = sitofp i32 %362 to double
%364 = fmul double %45, 2.000000e+00
%365 = tail call double @pow(double %41, double %364)
%366 = sitofp i32 %9 to double
%367 = fmul double %366, %359
%368 = tail call double @llvm.fmuladd.f64(double %366, double %67, double %367)
%369 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %368)
%370 = sitofp i32 %369 to double
%371 = fneg double %357
%372 = fmul double %365, %371
%373 = fmul double %372, %370
%374 = tail call double @llvm.fmuladd.f64(double %357, double %363, double %373)
br label %676
375: ; preds = %172
%376 = fmul double %37, %1
%377 = sitofp i32 %10 to double
%378 = fmul double %54, %377
%379 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %378)
%380 = sitofp i32 %379 to double
%381 = fmul double %58, %377
%382 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %381)
%383 = sitofp i32 %382 to double
%384 = fneg double %376
%385 = fmul double %384, %383
%386 = tail call double @llvm.fmuladd.f64(double %376, double %380, double %385)
%387 = fmul double %53, 2.000000e+00
%388 = tail call double @pow(double %41, double %387)
%389 = fmul double %376, %388
%390 = sitofp i32 %9 to double
%391 = fmul double %64, %390
%392 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %391)
%393 = sitofp i32 %392 to double
%394 = tail call double @llvm.fmuladd.f64(double %389, double %393, double %386)
%395 = tail call double @pow(double %41, double %387)
%396 = fmul double %67, %390
%397 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %396)
%398 = sitofp i32 %397 to double
%399 = fmul double %395, %384
%400 = tail call double @llvm.fmuladd.f64(double %399, double %398, double %394)
br label %676
401: ; preds = %172
%402 = fmul double %37, %1
%403 = sitofp i32 %10 to double
%404 = fmul double %58, %403
%405 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %404)
%406 = sitofp i32 %405 to double
%407 = fmul double %53, 2.000000e+00
%408 = tail call double @pow(double %41, double %407)
%409 = sitofp i32 %9 to double
%410 = fmul double %67, %409
%411 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %410)
%412 = sitofp i32 %411 to double
%413 = fneg double %402
%414 = fmul double %408, %413
%415 = fmul double %414, %412
%416 = tail call double @llvm.fmuladd.f64(double %402, double %406, double %415)
br label %676
417: ; preds = %172
tail call void @abort()
unreachable
418: ; preds = %170
%419 = fcmp olt double %2, %3
br i1 %419, label %420, label %675
420: ; preds = %418
switch i32 %0, label %674 [
i32 13, label %421
i32 14, label %444
i32 15, label %469
i32 16, label %489
i32 17, label %511
i32 18, label %520
i32 19, label %532
i32 20, label %539
i32 21, label %549
i32 22, label %568
i32 23, label %597
i32 24, label %613
i32 25, label %676
i32 27, label %676
i32 26, label %639
i32 28, label %658
]
421: ; preds = %420
%422 = fmul double %40, %4
%423 = sitofp i32 %10 to double
%424 = fneg double %34
%425 = fmul double %423, %424
%426 = tail call double @llvm.fmuladd.f64(double %423, double %54, double %425)
%427 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %426)
%428 = sitofp i32 %427 to double
%429 = tail call double @llvm.fmuladd.f64(double %423, double %58, double %425)
%430 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %429)
%431 = sitofp i32 %430 to double
%432 = fneg double %422
%433 = fmul double %432, %431
%434 = tail call double @llvm.fmuladd.f64(double %422, double %428, double %433)
%435 = fmul double %45, 2.000000e+00
%436 = tail call double @pow(double %41, double %435)
%437 = fmul double %422, %436
%438 = sitofp i32 %9 to double
%439 = fmul double %438, %424
%440 = tail call double @llvm.fmuladd.f64(double %438, double %67, double %439)
%441 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %440)
%442 = sitofp i32 %441 to double
%443 = tail call double @llvm.fmuladd.f64(double %437, double %442, double %434)
br label %676
444: ; preds = %420
%445 = fmul double %40, %4
%446 = sitofp i32 %10 to double
%447 = fneg double %34
%448 = fmul double %446, %447
%449 = tail call double @llvm.fmuladd.f64(double %446, double %58, double %448)
%450 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %449)
%451 = sitofp i32 %450 to double
%452 = fmul double %45, 2.000000e+00
%453 = tail call double @pow(double %41, double %452)
%454 = sitofp i32 %9 to double
%455 = fmul double %454, %447
%456 = tail call double @llvm.fmuladd.f64(double %454, double %64, double %455)
%457 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %456)
%458 = sitofp i32 %457 to double
%459 = fneg double %445
%460 = fmul double %453, %459
%461 = fmul double %460, %458
%462 = tail call double @llvm.fmuladd.f64(double %445, double %451, double %461)
%463 = tail call double @pow(double %41, double %452)
%464 = fmul double %445, %463
%465 = tail call double @llvm.fmuladd.f64(double %454, double %67, double %455)
%466 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %465)
%467 = sitofp i32 %466 to double
%468 = tail call double @llvm.fmuladd.f64(double %464, double %467, double %462)
br label %676
469: ; preds = %420
%470 = fmul double %37, %1
%471 = sitofp i32 %10 to double
%472 = fmul double %54, %471
%473 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %472)
%474 = sitofp i32 %473 to double
%475 = fmul double %58, %471
%476 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %475)
%477 = sitofp i32 %476 to double
%478 = fneg double %470
%479 = fmul double %478, %477
%480 = tail call double @llvm.fmuladd.f64(double %470, double %474, double %479)
%481 = fmul double %53, 2.000000e+00
%482 = tail call double @pow(double %41, double %481)
%483 = fmul double %470, %482
%484 = sitofp i32 %9 to double
%485 = fmul double %67, %484
%486 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %485)
%487 = sitofp i32 %486 to double
%488 = tail call double @llvm.fmuladd.f64(double %483, double %487, double %480)
br label %676
489: ; preds = %420
%490 = fmul double %37, %1
%491 = sitofp i32 %10 to double
%492 = fmul double %58, %491
%493 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %492)
%494 = sitofp i32 %493 to double
%495 = fmul double %53, 2.000000e+00
%496 = tail call double @pow(double %41, double %495)
%497 = sitofp i32 %9 to double
%498 = fmul double %64, %497
%499 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %498)
%500 = sitofp i32 %499 to double
%501 = fneg double %490
%502 = fmul double %496, %501
%503 = fmul double %502, %500
%504 = tail call double @llvm.fmuladd.f64(double %490, double %494, double %503)
%505 = tail call double @pow(double %41, double %495)
%506 = fmul double %490, %505
%507 = fmul double %67, %497
%508 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %507)
%509 = sitofp i32 %508 to double
%510 = tail call double @llvm.fmuladd.f64(double %506, double %509, double %504)
br label %676
511: ; preds = %420
%512 = fmul double %40, %4
%513 = sitofp i32 %10 to double
%514 = fneg double %34
%515 = fmul double %513, %514
%516 = tail call double @llvm.fmuladd.f64(double %513, double %54, double %515)
%517 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %516)
%518 = sitofp i32 %517 to double
%519 = fmul double %512, %518
br label %676
520: ; preds = %420
%521 = fmul double %40, %4
%522 = fmul double %45, 2.000000e+00
%523 = tail call double @pow(double %41, double %522)
%524 = fmul double %521, %523
%525 = sitofp i32 %9 to double
%526 = fneg double %34
%527 = fmul double %525, %526
%528 = tail call double @llvm.fmuladd.f64(double %525, double %64, double %527)
%529 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %528)
%530 = sitofp i32 %529 to double
%531 = fmul double %524, %530
br label %676
532: ; preds = %420
%533 = fmul double %37, %1
%534 = sitofp i32 %10 to double
%535 = fmul double %54, %534
%536 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %535)
%537 = sitofp i32 %536 to double
%538 = fmul double %533, %537
br label %676
539: ; preds = %420
%540 = fmul double %37, %1
%541 = fmul double %53, 2.000000e+00
%542 = tail call double @pow(double %41, double %541)
%543 = fmul double %540, %542
%544 = sitofp i32 %9 to double
%545 = fmul double %64, %544
%546 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %545)
%547 = sitofp i32 %546 to double
%548 = fmul double %543, %547
br label %676
549: ; preds = %420
%550 = fmul double %40, %4
%551 = sitofp i32 %10 to double
%552 = fneg double %34
%553 = fmul double %551, %552
%554 = tail call double @llvm.fmuladd.f64(double %551, double %58, double %553)
%555 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %554)
%556 = sitofp i32 %555 to double
%557 = fmul double %45, 2.000000e+00
%558 = tail call double @pow(double %41, double %557)
%559 = sitofp i32 %9 to double
%560 = fmul double %559, %552
%561 = tail call double @llvm.fmuladd.f64(double %559, double %67, double %560)
%562 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %561)
%563 = sitofp i32 %562 to double
%564 = fneg double %550
%565 = fmul double %558, %564
%566 = fmul double %565, %563
%567 = tail call double @llvm.fmuladd.f64(double %550, double %556, double %566)
br label %676
568: ; preds = %420
%569 = fmul double %40, %4
%570 = sitofp i32 %10 to double
%571 = fneg double %34
%572 = fmul double %570, %571
%573 = tail call double @llvm.fmuladd.f64(double %570, double %54, double %572)
%574 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %573)
%575 = sitofp i32 %574 to double
%576 = tail call double @llvm.fmuladd.f64(double %570, double %58, double %572)
%577 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %576)
%578 = sitofp i32 %577 to double
%579 = fneg double %569
%580 = fmul double %579, %578
%581 = tail call double @llvm.fmuladd.f64(double %569, double %575, double %580)
%582 = fmul double %45, 2.000000e+00
%583 = tail call double @pow(double %41, double %582)
%584 = fmul double %569, %583
%585 = sitofp i32 %9 to double
%586 = fmul double %585, %571
%587 = tail call double @llvm.fmuladd.f64(double %585, double %64, double %586)
%588 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %587)
%589 = sitofp i32 %588 to double
%590 = tail call double @llvm.fmuladd.f64(double %584, double %589, double %581)
%591 = tail call double @pow(double %41, double %582)
%592 = tail call double @llvm.fmuladd.f64(double %585, double %67, double %586)
%593 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %592)
%594 = sitofp i32 %593 to double
%595 = fmul double %591, %579
%596 = tail call double @llvm.fmuladd.f64(double %595, double %594, double %590)
br label %676
597: ; preds = %420
%598 = fmul double %37, %1
%599 = sitofp i32 %10 to double
%600 = fmul double %58, %599
%601 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %600)
%602 = sitofp i32 %601 to double
%603 = fmul double %53, 2.000000e+00
%604 = tail call double @pow(double %41, double %603)
%605 = sitofp i32 %9 to double
%606 = fmul double %67, %605
%607 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %606)
%608 = sitofp i32 %607 to double
%609 = fneg double %598
%610 = fmul double %604, %609
%611 = fmul double %610, %608
%612 = tail call double @llvm.fmuladd.f64(double %598, double %602, double %611)
br label %676
613: ; preds = %420
%614 = fmul double %37, %1
%615 = sitofp i32 %10 to double
%616 = fmul double %54, %615
%617 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %616)
%618 = sitofp i32 %617 to double
%619 = fmul double %58, %615
%620 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %619)
%621 = sitofp i32 %620 to double
%622 = fneg double %614
%623 = fmul double %622, %621
%624 = tail call double @llvm.fmuladd.f64(double %614, double %618, double %623)
%625 = fmul double %53, 2.000000e+00
%626 = tail call double @pow(double %41, double %625)
%627 = fmul double %614, %626
%628 = sitofp i32 %9 to double
%629 = fmul double %64, %628
%630 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %629)
%631 = sitofp i32 %630 to double
%632 = tail call double @llvm.fmuladd.f64(double %627, double %631, double %624)
%633 = tail call double @pow(double %41, double %625)
%634 = fmul double %67, %628
%635 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %634)
%636 = sitofp i32 %635 to double
%637 = fmul double %633, %622
%638 = tail call double @llvm.fmuladd.f64(double %637, double %636, double %632)
br label %676
639: ; preds = %420
%640 = fmul double %40, %4
%641 = sitofp i32 %10 to double
%642 = fneg double %34
%643 = fmul double %641, %642
%644 = tail call double @llvm.fmuladd.f64(double %641, double %54, double %643)
%645 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %644)
%646 = sitofp i32 %645 to double
%647 = fmul double %45, 2.000000e+00
%648 = tail call double @pow(double %41, double %647)
%649 = sitofp i32 %9 to double
%650 = fmul double %649, %642
%651 = tail call double @llvm.fmuladd.f64(double %649, double %64, double %650)
%652 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %651)
%653 = sitofp i32 %652 to double
%654 = fneg double %640
%655 = fmul double %648, %654
%656 = fmul double %655, %653
%657 = tail call double @llvm.fmuladd.f64(double %640, double %646, double %656)
br label %676
658: ; preds = %420
%659 = fmul double %37, %1
%660 = sitofp i32 %10 to double
%661 = fmul double %54, %660
%662 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %661)
%663 = sitofp i32 %662 to double
%664 = fmul double %53, 2.000000e+00
%665 = tail call double @pow(double %41, double %664)
%666 = sitofp i32 %9 to double
%667 = fmul double %64, %666
%668 = tail call i32 (double, ...) bitcast (i32 (...)* @cnd to i32 (double, ...)*)(double %667)
%669 = sitofp i32 %668 to double
%670 = fneg double %659
%671 = fmul double %665, %670
%672 = fmul double %671, %669
%673 = tail call double @llvm.fmuladd.f64(double %659, double %663, double %672)
br label %676
674: ; preds = %420
tail call void @abort()
unreachable
675: ; preds = %418
tail call void @abort()
unreachable
676: ; preds = %420, %420, %172, %172, %658, %639, %613, %597, %568, %549, %539, %532, %520, %511, %489, %469, %444, %421, %401, %375, %356, %327, %311, %292, %272, %250, %227, %202, %195, %185, %173, %154, %133, %116, %96, %76
%677 = phi double [ %93, %76 ], [ %113, %96 ], [ %130, %116 ], [ %151, %133 ], [ %169, %154 ], [ %416, %401 ], [ %400, %375 ], [ %374, %356 ], [ %355, %327 ], [ %326, %311 ], [ %310, %292 ], [ %291, %272 ], [ %271, %250 ], [ %249, %227 ], [ %226, %202 ], [ %201, %195 ], [ %194, %185 ], [ %184, %173 ], [ %673, %658 ], [ %657, %639 ], [ %638, %613 ], [ %612, %597 ], [ %596, %568 ], [ %567, %549 ], [ %548, %539 ], [ %538, %532 ], [ %531, %520 ], [ %519, %511 ], [ %510, %489 ], [ %488, %469 ], [ %468, %444 ], [ %443, %421 ], [ 0.000000e+00, %172 ], [ 0.000000e+00, %172 ], [ 0.000000e+00, %420 ], [ 0.000000e+00, %420 ]
ret double %677
}