double En(int ip, double r, double s) {
  double f = 0.0;
  double t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t18;
  double t21, t22, t23, t24, t25, t26;
  if (ip == 0) {
    f = 1.0;
  } else if (ip == 1) {
    f = s - r;
  } else if (ip == 2) {
    t1 = s * s;
    t3 = r * r;
    f = t1 - 3.0 * r * s + t3;
  } else if (ip == 3) {
    t1 = s * s;
    t4 = r * r;
    f = t1 * s - 6.0 * r * t1 + 6.0 * t4 * s - t4 * r;
  } else if (ip == 4) {
    t1 = s * s;
    t2 = t1 * t1;
    t5 = r * r;
    t9 = t5 * t5;
    f = t2 - 10.0 * r * t1 * s + 20.0 * t5 * t1 - 10.0 * t5 * r * s + t9;
  } else if (ip == 5) {
    t1 = s * s;
    t2 = t1 * t1;
    t5 = r * r;
    t10 = t5 * t5;
    f = t2 * s - 15.0 * t2 * r + 50.0 * t5 * t1 * s - 50.0 * t5 * r * t1 +
        15.0 * t10 * s - t10 * r;
  } else if (ip == 6) {
    t1 = s * s;
    t2 = t1 * t1;
    t6 = r * r;
    t11 = t6 * t6;
    f = t2 * t1 - 21.0 * r * t2 * s + 105.0 * t6 * t2 -
        175.0 * t6 * r * t1 * s + 105.0 * t11 * t1 - 21.0 * t11 * r * s +
        t11 * t6;
  } else if (ip == 7) {
    t1 = s * s;
    t2 = t1 * s;
    t3 = t1 * t1;
    t7 = r * r;
    t10 = t7 * r;
    t12 = t7 * t7;
    f = t3 * t2 - 28.0 * r * t3 * t1 + 196.0 * t7 * t3 * s - 490.0 * t10 * t3 +
        490.0 * t12 * t2 - 196.0 * t12 * r * t1 + 28.0 * t12 * t7 * s -
        t12 * t10;
  } else if (ip == 8) {
    t1 = s * s;
    t2 = t1 * t1;
    t3 = t2 * t2;
    t4 = t1 * s;
    t7 = r * r;
    t10 = t7 * r;
    t13 = t7 * t7;
    t21 = t13 * t13;
    f = t3 - 36.0 * r * t2 * t4 + 336.0 * t7 * t2 * t1 - 1176.0 * t10 * t2 * s +
        1764.0 * t13 * t2 - 1176.0 * t13 * r * t4 + 336.0 * t13 * t7 * t1 -
        36.0 * t13 * t10 * s + t21;
  } else if (ip == 9) {
    t1 = s * s;
    t2 = t1 * t1;
    t3 = t2 * t2;
    t6 = r * r;
    t7 = t1 * s;
    t10 = t6 * r;
    t13 = t6 * t6;
    t22 = t13 * t13;
    f = t3 * s - 45.0 * t3 * r + 540.0 * t6 * t2 * t7 - 2520.0 * t10 * t2 * t1 +
        5292.0 * t13 * t2 * s - 5292.0 * t13 * r * t2 + 2520.0 * t13 * t6 * t7 -
        540.0 * t13 * t10 * t1 + 45.0 * t22 * s - t22 * r;
  } else if (ip == 10) {
    t1 = s * s;
    t2 = t1 * t1;
    t3 = t2 * t2;
    t7 = r * r;
    t9 = t7 * r;
    t10 = t1 * s;
    t13 = t7 * t7;
    t23 = t13 * t13;
    f = t3 * t1 - 55.0 * r * t3 * s + 825.0 * t7 * t3 - 4950.0 * t9 * t2 * t10 +
        13860.0 * t13 * t2 * t1 - 19404.0 * t13 * r * t2 * s +
        13860.0 * t13 * t7 * t2 - 4950.0 * t13 * t9 * t10 + 825.0 * t23 * t1 -
        55.0 * t23 * r * s + t23 * t7;
  } else if (ip == 11) {
    t1 = s * s;
    t2 = t1 * s;
    t3 = t1 * t1;
    t4 = t3 * t3;
    t8 = r * r;
    t11 = t8 * r;
    t13 = t8 * t8;
    t24 = t13 * t13;
    f = t2 * t4 - 66.0 * r * t4 * t1 + 1210.0 * t8 * t4 * s -
        9075.0 * t11 * t4 + 32670.0 * t13 * t3 * t2 -
        60984.0 * t13 * r * t3 * t1 + 60984.0 * t13 * t8 * t3 * s -
        32670.0 * t13 * t11 * t3 + 9075.0 * t24 * t2 - 1210.0 * t24 * r * t1 +
        66.0 * t24 * t8 * s - t24 * t11;
  } else if (ip == 12) {
    t1 = s * s;
    t2 = t1 * t1;
    t3 = t2 * t2;
    t5 = t1 * s;
    t8 = r * r;
    t11 = t8 * r;
    t14 = t8 * t8;
    t25 = t14 * t14;
    f = t3 * t2 - 78.0 * r * t3 * t5 + 1716.0 * t8 * t3 * t1 -
        15730.0 * t11 * t3 * s + 70785.0 * t14 * t3 -
        169884.0 * t14 * r * t2 * t5 + 226512.0 * t14 * t8 * t2 * t1 -
        169884.0 * t14 * t11 * t2 * s + 70785.0 * t25 * t2 -
        15730.0 * t25 * r * t5 + 1716.0 * t25 * t8 * t1 - 78.0 * t25 * t11 * s +
        t25 * t14;
  } else if (ip == 13) {
    t1 = s * s;
    t2 = t1 * t1;
    t3 = t2 * s;
    t4 = t2 * t2;
    t8 = r * r;
    t9 = t1 * s;
    t12 = t8 * r;
    t15 = t8 * t8;
    t18 = t15 * r;
    t26 = t15 * t15;
    f = t4 * t3 - 91.0 * r * t2 * t4 + 2366.0 * t8 * t4 * t9 -
        26026.0 * t12 * t4 * t1 + 143143.0 * t15 * t4 * s -
        429429.0 * t18 * t4 + 736164.0 * t15 * t8 * t2 * t9 -
        736164.0 * t15 * t12 * t2 * t1 + 429429.0 * t26 * t3 -
        143143.0 * t26 * r * t2 + 26026.0 * t26 * t8 * t9 -
        2366.0 * t26 * t12 * t1 + 91.0 * t26 * t15 * s - t26 * t18;
  }
  return f;
}


x86 assembly (clang, -O0):
<En>:
push   %rbp
mov    %rsp,%rbp
sub    $0x50,%rsp
mov    %edi,-0x4(%rbp)
movsd  %xmm0,-0x10(%rbp)
movsd  %xmm1,-0x18(%rbp)
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x20(%rbp)
cmpl   $0x0,-0x4(%rbp)
jne    1139 <En+0x39>
movsd  0x2021(%rip),%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2639 <En+0x1539>
cmpl   $0x1,-0x4(%rbp)
jne    1157 <En+0x57>
movsd  -0x18(%rbp),%xmm0
subsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2634 <En+0x1534>
cmpl   $0x2,-0x4(%rbp)
jne    11c4 <En+0xc4>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x10(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x38(%rbp)
movsd  -0x28(%rbp),%xmm1
movsd  0x1fbc(%rip),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  -0x18(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
addsd  -0x38(%rbp),%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    262f <En+0x152f>
cmpl   $0x3,-0x4(%rbp)
jne    1274 <En+0x174>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x10(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x40(%rbp)
movsd  -0x28(%rbp),%xmm0
movsd  -0x18(%rbp),%xmm2
movsd  0x1f42(%rip),%xmm1
mulsd  -0x10(%rbp),%xmm1
mulsd  -0x28(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x1f11(%rip),%xmm1
mulsd  -0x40(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x40(%rbp),%xmm0
movsd  -0x10(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    262a <En+0x152a>
cmpl   $0x4,-0x4(%rbp)
jne    1354 <En+0x254>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  -0x10(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x48(%rbp)
movsd  -0x48(%rbp),%xmm0
mulsd  -0x48(%rbp),%xmm0
movsd  %xmm0,-0x68(%rbp)
movsd  -0x30(%rbp),%xmm1
movsd  0x1e69(%rip),%xmm0
mulsd  -0x10(%rbp),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  -0x18(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x1e3b(%rip),%xmm1
mulsd  -0x48(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x1e19(%rip),%xmm0
mulsd  -0x48(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  -0x18(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
addsd  -0x68(%rbp),%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2625 <En+0x1525>
cmpl   $0x5,-0x4(%rbp)
jne    1477 <En+0x377>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  -0x10(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x48(%rbp)
movsd  -0x48(%rbp),%xmm0
mulsd  -0x48(%rbp),%xmm0
movsd  %xmm0,-0x70(%rbp)
movsd  -0x30(%rbp),%xmm0
movsd  -0x18(%rbp),%xmm2
movsd  0x1d74(%rip),%xmm1
mulsd  -0x30(%rbp),%xmm1
mulsd  -0x10(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x1d4b(%rip),%xmm1
mulsd  -0x48(%rbp),%xmm1
mulsd  -0x28(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x1d2c(%rip),%xmm0
mulsd  -0x48(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x1cee(%rip),%xmm1
mulsd  -0x70(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x70(%rbp),%xmm0
movsd  -0x10(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2620 <En+0x1520>
cmpl   $0x6,-0x4(%rbp)
jne    15be <En+0x4be>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  -0x10(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  -0x50(%rbp),%xmm0
mulsd  -0x50(%rbp),%xmm0
movsd  %xmm0,-0x78(%rbp)
movsd  -0x30(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm2
movsd  0x1c39(%rip),%xmm0
mulsd  -0x10(%rbp),%xmm0
mulsd  -0x30(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x1c0b(%rip),%xmm0
mulsd  -0x50(%rbp),%xmm0
movsd  -0x30(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x1bf9(%rip),%xmm1
mulsd  -0x50(%rbp),%xmm1
mulsd  -0x10(%rbp),%xmm1
mulsd  -0x28(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x1bb6(%rip),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x1b94(%rip),%xmm1
mulsd  -0x78(%rbp),%xmm1
mulsd  -0x10(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x78(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    261b <En+0x151b>
cmpl   $0x7,-0x4(%rbp)
jne    1754 <En+0x654>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  %xmm0,-0x38(%rbp)
movsd  -0x10(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  -0x58(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x70(%rbp)
movsd  -0x58(%rbp),%xmm0
mulsd  -0x58(%rbp),%xmm0
movsd  %xmm0,-0x80(%rbp)
movsd  -0x38(%rbp),%xmm0
movsd  -0x30(%rbp),%xmm2
movsd  0x1abc(%rip),%xmm1
mulsd  -0x10(%rbp),%xmm1
mulsd  -0x38(%rbp),%xmm1
mulsd  -0x28(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x1a8e(%rip),%xmm1
mulsd  -0x58(%rbp),%xmm1
mulsd  -0x38(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x1a77(%rip),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  -0x38(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x1a46(%rip),%xmm1
mulsd  -0x80(%rbp),%xmm1
movsd  -0x30(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x1a24(%rip),%xmm0
mulsd  -0x80(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x19e6(%rip),%xmm1
mulsd  -0x80(%rbp),%xmm1
mulsd  -0x58(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x80(%rbp),%xmm0
movsd  -0x70(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2616 <En+0x1516>
cmpl   $0x8,-0x4(%rbp)
jne    1935 <En+0x835>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  -0x30(%rbp),%xmm0
mulsd  -0x30(%rbp),%xmm0
movsd  %xmm0,-0x38(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x40(%rbp)
movsd  -0x10(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  -0x58(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x70(%rbp)
movsd  -0x58(%rbp),%xmm0
mulsd  -0x58(%rbp),%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
movsd  -0x88(%rbp),%xmm0
ff
mulsd  -0x88(%rbp),%xmm0
ff
movsd  %xmm0,-0xa8(%rbp)
ff
movsd  -0x38(%rbp),%xmm1
movsd  0x18e1(%rip),%xmm0
mulsd  -0x10(%rbp),%xmm0
mulsd  -0x30(%rbp),%xmm0
movsd  -0x40(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x18b3(%rip),%xmm1
mulsd  -0x58(%rbp),%xmm1
mulsd  -0x30(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x189c(%rip),%xmm0
mulsd  -0x70(%rbp),%xmm0
mulsd  -0x30(%rbp),%xmm0
movsd  -0x18(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x186e(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
movsd  -0x30(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x1849(%rip),%xmm0
mulsd  -0x88(%rbp),%xmm0
ff
mulsd  -0x10(%rbp),%xmm0
movsd  -0x40(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x1808(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
mulsd  -0x58(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x17de(%rip),%xmm0
mulsd  -0x88(%rbp),%xmm0
ff
mulsd  -0x70(%rbp),%xmm0
movsd  -0x18(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
addsd  -0xa8(%rbp),%xmm0
ff
movsd  %xmm0,-0x20(%rbp)
jmp    2611 <En+0x1511>
cmpl   $0x9,-0x4(%rbp)
jne    1b5c <En+0xa5c>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  -0x30(%rbp),%xmm0
mulsd  -0x30(%rbp),%xmm0
movsd  %xmm0,-0x38(%rbp)
movsd  -0x10(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  -0x50(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x70(%rbp)
movsd  -0x50(%rbp),%xmm0
mulsd  -0x50(%rbp),%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
movsd  -0x88(%rbp),%xmm0
ff
mulsd  -0x88(%rbp),%xmm0
ff
movsd  %xmm0,-0xb0(%rbp)
ff
movsd  -0x38(%rbp),%xmm0
movsd  -0x18(%rbp),%xmm2
movsd  0x16db(%rip),%xmm1
mulsd  -0x38(%rbp),%xmm1
mulsd  -0x10(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x16b2(%rip),%xmm1
mulsd  -0x50(%rbp),%xmm1
mulsd  -0x30(%rbp),%xmm1
movsd  -0x58(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x169b(%rip),%xmm0
mulsd  -0x70(%rbp),%xmm0
mulsd  -0x30(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x166d(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
mulsd  -0x30(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x164b(%rip),%xmm0
mulsd  -0x88(%rbp),%xmm0
ff
mulsd  -0x10(%rbp),%xmm0
movsd  -0x30(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x160a(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
mulsd  -0x50(%rbp),%xmm1
movsd  -0x58(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x15e0(%rip),%xmm0
mulsd  -0x88(%rbp),%xmm0
ff
mulsd  -0x70(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x159f(%rip),%xmm1
mulsd  -0xb0(%rbp),%xmm1
ff
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0xb0(%rbp),%xmm0
ff
movsd  -0x10(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    260c <En+0x150c>
cmpl   $0xa,-0x4(%rbp)
jne    1daa <En+0xcaa>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  -0x30(%rbp),%xmm0
mulsd  -0x30(%rbp),%xmm0
movsd  %xmm0,-0x38(%rbp)
movsd  -0x10(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  -0x58(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x68(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x70(%rbp)
movsd  -0x58(%rbp),%xmm0
mulsd  -0x58(%rbp),%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
movsd  -0x88(%rbp),%xmm0
ff
mulsd  -0x88(%rbp),%xmm0
ff
movsd  %xmm0,-0xb8(%rbp)
ff
movsd  -0x38(%rbp),%xmm1
movsd  -0x28(%rbp),%xmm2
movsd  0x148c(%rip),%xmm0
mulsd  -0x10(%rbp),%xmm0
mulsd  -0x38(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x145e(%rip),%xmm0
mulsd  -0x58(%rbp),%xmm0
movsd  -0x38(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x144c(%rip),%xmm1
mulsd  -0x68(%rbp),%xmm1
mulsd  -0x30(%rbp),%xmm1
movsd  -0x70(%rbp),%xmm2
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x141e(%rip),%xmm0
mulsd  -0x88(%rbp),%xmm0
ff
mulsd  -0x30(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x1404(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
mulsd  -0x10(%rbp),%xmm1
mulsd  -0x30(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x13be(%rip),%xmm0
mulsd  -0x88(%rbp),%xmm0
ff
mulsd  -0x58(%rbp),%xmm0
movsd  -0x30(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x1394(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
mulsd  -0x68(%rbp),%xmm1
movsd  -0x70(%rbp),%xmm2
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x1353(%rip),%xmm0
mulsd  -0xb8(%rbp),%xmm0
ff
movsd  -0x28(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x132e(%rip),%xmm1
mulsd  -0xb8(%rbp),%xmm1
ff
mulsd  -0x10(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0xb8(%rbp),%xmm0
ff
movsd  -0x58(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2607 <En+0x1507>
cmpl   $0xb,-0x4(%rbp)
jne    2036 <En+0xf36>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  %xmm0,-0x38(%rbp)
movsd  -0x38(%rbp),%xmm0
mulsd  -0x38(%rbp),%xmm0
movsd  %xmm0,-0x40(%rbp)
movsd  -0x10(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  -0x60(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x78(%rbp)
movsd  -0x60(%rbp),%xmm0
mulsd  -0x60(%rbp),%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
movsd  -0x88(%rbp),%xmm0
ff
mulsd  -0x88(%rbp),%xmm0
ff
movsd  %xmm0,-0xc0(%rbp)
ff
movsd  -0x30(%rbp),%xmm0
movsd  -0x40(%rbp),%xmm2
movsd  0x1216(%rip),%xmm1
mulsd  -0x10(%rbp),%xmm1
mulsd  -0x40(%rbp),%xmm1
mulsd  -0x28(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x11e8(%rip),%xmm1
mulsd  -0x60(%rbp),%xmm1
mulsd  -0x40(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x11d1(%rip),%xmm0
mulsd  -0x78(%rbp),%xmm0
movsd  -0x40(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x11a8(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
mulsd  -0x38(%rbp),%xmm1
movsd  -0x30(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x118e(%rip),%xmm0
mulsd  -0x88(%rbp),%xmm0
ff
mulsd  -0x10(%rbp),%xmm0
mulsd  -0x38(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x1150(%rip),%xmm1
mulsd  -0x88(%rbp),%xmm1
ff
mulsd  -0x60(%rbp),%xmm1
mulsd  -0x38(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x1121(%rip),%xmm0
mulsd  -0x88(%rbp),%xmm0
ff
mulsd  -0x78(%rbp),%xmm0
movsd  -0x38(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x10e0(%rip),%xmm1
mulsd  -0xc0(%rbp),%xmm1
ff
movsd  -0x30(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0x10bb(%rip),%xmm0
mulsd  -0xc0(%rbp),%xmm0
ff
mulsd  -0x10(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x107a(%rip),%xmm1
mulsd  -0xc0(%rbp),%xmm1
ff
mulsd  -0x60(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0xc0(%rbp),%xmm0
movsd  -0x78(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2602 <En+0x1502>
cmpl   $0xc,-0x4(%rbp)
jne    22ec <En+0x11ec>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  -0x30(%rbp),%xmm0
mulsd  -0x30(%rbp),%xmm0
movsd  %xmm0,-0x38(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x48(%rbp)
movsd  -0x10(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  -0x60(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x78(%rbp)
movsd  -0x60(%rbp),%xmm0
mulsd  -0x60(%rbp),%xmm0
movsd  %xmm0,-0x90(%rbp)
ff
movsd  -0x90(%rbp),%xmm0
ff
mulsd  -0x90(%rbp),%xmm0
ff
movsd  %xmm0,-0xc8(%rbp)
ff
movsd  -0x38(%rbp),%xmm1
movsd  -0x30(%rbp),%xmm2
movsd  0xf5a(%rip),%xmm0
mulsd  -0x10(%rbp),%xmm0
mulsd  -0x38(%rbp),%xmm0
mulsd  -0x48(%rbp),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0xf2c(%rip),%xmm0
mulsd  -0x60(%rbp),%xmm0
mulsd  -0x38(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0xf15(%rip),%xmm1
mulsd  -0x78(%rbp),%xmm1
mulsd  -0x38(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0xee7(%rip),%xmm0
mulsd  -0x90(%rbp),%xmm0
ff
movsd  -0x38(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0xed2(%rip),%xmm1
mulsd  -0x90(%rbp),%xmm1
ff
mulsd  -0x10(%rbp),%xmm1
mulsd  -0x30(%rbp),%xmm1
movsd  -0x48(%rbp),%xmm2
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0xe9c(%rip),%xmm0
mulsd  -0x90(%rbp),%xmm0
ff
mulsd  -0x60(%rbp),%xmm0
mulsd  -0x30(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0xe6d(%rip),%xmm1
mulsd  -0x90(%rbp),%xmm1
ff
mulsd  -0x78(%rbp),%xmm1
mulsd  -0x30(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0xe27(%rip),%xmm0
mulsd  -0xc8(%rbp),%xmm0
ff
movsd  -0x30(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0xe02(%rip),%xmm1
mulsd  -0xc8(%rbp),%xmm1
ff
mulsd  -0x10(%rbp),%xmm1
movsd  -0x48(%rbp),%xmm2
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0xdc1(%rip),%xmm0
mulsd  -0xc8(%rbp),%xmm0
ff
mulsd  -0x60(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0xd97(%rip),%xmm1
mulsd  -0xc8(%rbp),%xmm1
ff
mulsd  -0x78(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0xc8(%rbp),%xmm0
ff
movsd  -0x90(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    25fd <En+0x14fd>
cmpl   $0xd,-0x4(%rbp)
jne    25f8 <En+0x14f8>
movsd  -0x18(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x28(%rbp),%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  -0x30(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x38(%rbp)
movsd  -0x30(%rbp),%xmm0
mulsd  -0x30(%rbp),%xmm0
movsd  %xmm0,-0x40(%rbp)
movsd  -0x10(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  -0x28(%rbp),%xmm0
mulsd  -0x18(%rbp),%xmm0
movsd  %xmm0,-0x68(%rbp)
movsd  -0x60(%rbp),%xmm0
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0x80(%rbp)
movsd  -0x60(%rbp),%xmm0
mulsd  -0x60(%rbp),%xmm0
movsd  %xmm0,-0x98(%rbp)
ff
movsd  -0x98(%rbp),%xmm0
ff
mulsd  -0x10(%rbp),%xmm0
movsd  %xmm0,-0xa0(%rbp)
ff
movsd  -0x98(%rbp),%xmm0
ff
mulsd  -0x98(%rbp),%xmm0
ff
movsd  %xmm0,-0xd0(%rbp)
ff
movsd  -0x40(%rbp),%xmm0
movsd  -0x38(%rbp),%xmm2
movsd  0xc50(%rip),%xmm1
mulsd  -0x10(%rbp),%xmm1
mulsd  -0x30(%rbp),%xmm1
mulsd  -0x40(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0xc22(%rip),%xmm1
mulsd  -0x60(%rbp),%xmm1
mulsd  -0x40(%rbp),%xmm1
movsd  -0x68(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0xc0b(%rip),%xmm0
mulsd  -0x80(%rbp),%xmm0
mulsd  -0x40(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0xbdd(%rip),%xmm1
mulsd  -0x98(%rbp),%xmm1
ff
mulsd  -0x40(%rbp),%xmm1
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0xbc3(%rip),%xmm0
mulsd  -0xa0(%rbp),%xmm0
ff
movsd  -0x40(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0xb97(%rip),%xmm1
mulsd  -0x98(%rbp),%xmm1
ff
mulsd  -0x60(%rbp),%xmm1
mulsd  -0x30(%rbp),%xmm1
movsd  -0x68(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0xb70(%rip),%xmm0
mulsd  -0x98(%rbp),%xmm0
ff
mulsd  -0x80(%rbp),%xmm0
mulsd  -0x30(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0xb2a(%rip),%xmm1
mulsd  -0xd0(%rbp),%xmm1
ff
movsd  -0x38(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0xb05(%rip),%xmm0
mulsd  -0xd0(%rbp),%xmm0
ff
mulsd  -0x10(%rbp),%xmm0
movsd  -0x30(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0xac4(%rip),%xmm1
mulsd  -0xd0(%rbp),%xmm1
ff
mulsd  -0x60(%rbp),%xmm1
movsd  -0x68(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0xa9a(%rip),%xmm0
mulsd  -0xd0(%rbp),%xmm0
ff
mulsd  -0x80(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0xa59(%rip),%xmm1
mulsd  -0xd0(%rbp),%xmm1
ff
mulsd  -0x98(%rbp),%xmm1
ff
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0xd0(%rbp),%xmm0
ff
movsd  -0xa0(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    25fd <En+0x14fd>
jmp    2602 <En+0x1502>
jmp    2607 <En+0x1507>
jmp    260c <En+0x150c>
jmp    2611 <En+0x1511>
jmp    2616 <En+0x1516>
jmp    261b <En+0x151b>
jmp    2620 <En+0x1520>
jmp    2625 <En+0x1525>
jmp    262a <En+0x152a>
jmp    262f <En+0x152f>
jmp    2634 <En+0x1534>
jmp    2639 <En+0x1539>
movsd  -0x20(%rbp),%xmm0
add    $0x50,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<En>:
cmp    $0xd,%edi
ja     1128 <En+0x28>
movsd  0xef3(%rip),%xmm2
mov    %edi,%eax
lea    0x10c2(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
subsd  %xmm0,%xmm1
movapd %xmm1,%xmm0
ret
xorps  %xmm2,%xmm2
movaps %xmm2,%xmm0
ret
movapd %xmm0,%xmm2
mulsd  %xmm0,%xmm2
mulsd  0x1091(%rip),%xmm0
mulsd  %xmm1,%xmm0
mulsd  %xmm1,%xmm1
addsd  %xmm0,%xmm1
addsd  %xmm2,%xmm1
movapd %xmm1,%xmm0
ret
movapd %xmm1,%xmm3
mulsd  %xmm1,%xmm3
movapd %xmm0,%xmm4
mulsd  %xmm0,%xmm4
movsd  0x1054(%rip),%xmm2
mulsd  %xmm0,%xmm2
mulsd  %xmm3,%xmm2
mulsd  %xmm1,%xmm3
addsd  %xmm2,%xmm3
movsd  0x1044(%rip),%xmm2
mulsd  %xmm4,%xmm2
mulsd  %xmm1,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm0,%xmm4
subsd  %xmm4,%xmm2
movapd %xmm2,%xmm0
ret
movapd %xmm1,%xmm3
mulsd  %xmm1,%xmm3
movapd %xmm0,%xmm2
mulsd  %xmm0,%xmm2
movsd  0xffb(%rip),%xmm4
movapd %xmm0,%xmm5
mulsd  %xmm4,%xmm5
mulsd  %xmm3,%xmm5
movsd  0xfef(%rip),%xmm6
mulsd  %xmm2,%xmm6
mulsd  %xmm3,%xmm6
mulsd  %xmm3,%xmm3
movapd %xmm2,%xmm7
mulsd  %xmm2,%xmm7
mulsd  %xmm1,%xmm5
addsd  %xmm3,%xmm5
addsd  %xmm5,%xmm6
mulsd  %xmm4,%xmm2
mulsd  %xmm0,%xmm2
mulsd  %xmm1,%xmm2
addsd  %xmm6,%xmm2
addsd  %xmm7,%xmm2
movapd %xmm2,%xmm0
ret
movapd %xmm1,%xmm2
movapd %xmm0,%xmm4
mulsd  %xmm0,%xmm4
movapd %xmm4,%xmm3
mulsd  0xf86(%rip),%xmm4
mulsd  %xmm1,%xmm2
movapd %xmm4,%xmm5
mulsd  %xmm2,%xmm5
mulsd  %xmm0,%xmm4
mulsd  %xmm2,%xmm4
mulsd  %xmm2,%xmm2
mulsd  %xmm3,%xmm3
movsd  0xf5a(%rip),%xmm6
mulsd  %xmm2,%xmm6
mulsd  %xmm0,%xmm6
mulsd  %xmm1,%xmm2
addsd  %xmm6,%xmm2
mulsd  %xmm1,%xmm5
addsd  %xmm2,%xmm5
subsd  %xmm4,%xmm5
movsd  0xf46(%rip),%xmm2
mulsd  %xmm3,%xmm2
mulsd  %xmm1,%xmm2
addsd  %xmm5,%xmm2
jmp    15e5 <En+0x4e5>
movapd %xmm1,%xmm9
mulsd  %xmm1,%xmm9
movapd %xmm9,%xmm6
mulsd  %xmm9,%xmm6
movapd %xmm0,%xmm8
mulsd  %xmm0,%xmm8
movapd %xmm8,%xmm2
mulsd  %xmm8,%xmm2
movsd  0xedd(%rip),%xmm4
movapd %xmm0,%xmm7
mulsd  %xmm4,%xmm7
mulsd  %xmm6,%xmm7
mulsd  %xmm1,%xmm7
movsd  0xecd(%rip),%xmm3
movapd %xmm8,%xmm5
mulsd  %xmm3,%xmm5
mulsd  %xmm6,%xmm5
mulsd  %xmm9,%xmm6
addsd  %xmm7,%xmm6
addsd  %xmm6,%xmm5
movsd  0xeb3(%rip),%xmm6
mulsd  %xmm8,%xmm6
mulsd  %xmm0,%xmm6
mulsd  %xmm9,%xmm6
mulsd  %xmm1,%xmm6
addsd  %xmm5,%xmm6
mulsd  %xmm2,%xmm3
mulsd  %xmm9,%xmm3
addsd  %xmm6,%xmm3
mulsd  %xmm2,%xmm4
mulsd  %xmm0,%xmm4
mulsd  %xmm1,%xmm4
addsd  %xmm3,%xmm4
mulsd  %xmm8,%xmm2
addsd  %xmm4,%xmm2
movapd %xmm2,%xmm0
ret
movapd %xmm1,%xmm2
mulsd  %xmm1,%xmm2
movapd %xmm2,%xmm8
mulsd  %xmm2,%xmm8
movapd %xmm0,%xmm9
mulsd  %xmm0,%xmm9
movapd %xmm9,%xmm3
mulsd  %xmm9,%xmm3
movsd  0xe04(%rip),%xmm6
mulsd  %xmm0,%xmm6
mulsd  %xmm8,%xmm6
mulsd  %xmm2,%xmm6
movsd  0xe0f(%rip),%xmm7
mulsd  %xmm3,%xmm7
mulsd  %xmm0,%xmm7
mulsd  %xmm2,%xmm7
movapd %xmm2,%xmm4
mulsd  %xmm1,%xmm4
movsd  0xddb(%rip),%xmm5
mulsd  %xmm9,%xmm5
movsd  0xdee(%rip),%xmm2
mulsd  %xmm3,%xmm2
mulsd  %xmm9,%xmm2
mulsd  %xmm0,%xmm9
mulsd  %xmm8,%xmm5
movsd  0xdbb(%rip),%xmm0
mulsd  %xmm9,%xmm0
mulsd  %xmm8,%xmm0
mulsd  %xmm4,%xmm8
addsd  %xmm6,%xmm8
mulsd  %xmm1,%xmm5
addsd  %xmm8,%xmm5
addsd  %xmm5,%xmm0
movsd  0xd9a(%rip),%xmm5
mulsd  %xmm3,%xmm5
mulsd  %xmm4,%xmm5
addsd  %xmm0,%xmm5
addsd  %xmm5,%xmm7
mulsd  %xmm1,%xmm2
addsd  %xmm7,%xmm2
mulsd  %xmm9,%xmm3
jmp    15e9 <En+0x4e9>
movapd %xmm1,%xmm9
mulsd  %xmm1,%xmm9
movapd %xmm9,%xmm10
mulsd  %xmm9,%xmm10
movapd %xmm0,%xmm6
mulsd  %xmm0,%xmm6
movapd %xmm6,%xmm2
mulsd  %xmm6,%xmm2
movsd  0xd1b(%rip),%xmm11
movapd %xmm6,%xmm12
mulsd  %xmm11,%xmm12
mulsd  %xmm2,%xmm11
mulsd  %xmm6,%xmm11
mulsd  %xmm0,%xmm6
movsd  0xcf2(%rip),%xmm8
movapd %xmm0,%xmm3
mulsd  %xmm8,%xmm3
mulsd  %xmm10,%xmm3
mulsd  %xmm10,%xmm12
movsd  0xce7(%rip),%xmm4
movapd %xmm6,%xmm5
mulsd  %xmm4,%xmm5
mulsd  %xmm10,%xmm5
movsd  0xcda(%rip),%xmm7
mulsd  %xmm2,%xmm7
mulsd  %xmm10,%xmm7
mulsd  %xmm10,%xmm10
mulsd  %xmm9,%xmm12
mulsd  %xmm9,%xmm11
mulsd  %xmm1,%xmm9
movapd %xmm2,%xmm13
mulsd  %xmm2,%xmm13
mulsd  %xmm9,%xmm3
addsd  %xmm10,%xmm3
addsd  %xmm3,%xmm12
mulsd  %xmm1,%xmm5
addsd  %xmm12,%xmm5
addsd  %xmm5,%xmm7
mulsd  %xmm2,%xmm4
mulsd  %xmm0,%xmm4
mulsd  %xmm9,%xmm4
addsd  %xmm7,%xmm4
addsd  %xmm4,%xmm11
mulsd  %xmm8,%xmm2
mulsd  %xmm6,%xmm2
mulsd  %xmm1,%xmm2
addsd  %xmm11,%xmm2
addsd  %xmm13,%xmm2
movapd %xmm2,%xmm0
ret
movapd %xmm1,%xmm8
mulsd  %xmm1,%xmm8
movapd %xmm8,%xmm9
mulsd  %xmm8,%xmm9
movapd %xmm0,%xmm6
mulsd  %xmm0,%xmm6
movapd %xmm6,%xmm11
mulsd  %xmm6,%xmm11
movsd  0xbee(%rip),%xmm10
mulsd  %xmm6,%xmm10
movsd  0xbf9(%rip),%xmm7
mulsd  %xmm11,%xmm7
mulsd  %xmm6,%xmm7
mulsd  %xmm0,%xmm6
mulsd  %xmm9,%xmm10
movsd  0xbcf(%rip),%xmm2
mulsd  %xmm6,%xmm2
mulsd  %xmm9,%xmm2
movsd  0xbc6(%rip),%xmm5
mulsd  %xmm11,%xmm5
movapd %xmm5,%xmm4
mulsd  %xmm9,%xmm4
mulsd  %xmm0,%xmm5
mulsd  %xmm9,%xmm5
mulsd  %xmm9,%xmm9
movapd %xmm11,%xmm3
mulsd  %xmm8,%xmm2
mulsd  0xba7(%rip),%xmm11
mulsd  %xmm6,%xmm11
mulsd  %xmm8,%xmm11
mulsd  %xmm1,%xmm8
mulsd  %xmm3,%xmm3
movsd  0xb64(%rip),%xmm6
mulsd  %xmm9,%xmm6
mulsd  %xmm0,%xmm6
mulsd  %xmm1,%xmm9
addsd  %xmm6,%xmm9
mulsd  %xmm8,%xmm10
addsd  %xmm9,%xmm10
addsd  %xmm10,%xmm2
mulsd  %xmm1,%xmm4
addsd  %xmm2,%xmm4
subsd  %xmm5,%xmm4
mulsd  %xmm8,%xmm7
addsd  %xmm4,%xmm7
addsd  %xmm7,%xmm11
movsd  0xb50(%rip),%xmm2
mulsd  %xmm3,%xmm2
mulsd  %xmm1,%xmm2
addsd  %xmm11,%xmm2
mulsd  %xmm0,%xmm3
subsd  %xmm3,%xmm2
movapd %xmm2,%xmm0
ret
movapd %xmm1,%xmm8
mulsd  %xmm1,%xmm8
movapd %xmm8,%xmm9
mulsd  %xmm8,%xmm9
movapd %xmm0,%xmm11
mulsd  %xmm0,%xmm11
movapd %xmm11,%xmm4
mulsd  %xmm11,%xmm4
movapd %xmm4,%xmm14
mulsd  %xmm4,%xmm14
movsd  0xaa4(%rip),%xmm6
movapd %xmm0,%xmm10
mulsd  %xmm6,%xmm10
movsd  0xa9a(%rip),%xmm5
movapd %xmm11,%xmm13
mulsd  %xmm5,%xmm13
movapd %xmm11,%xmm7
mulsd  %xmm14,%xmm5
mulsd  %xmm14,%xmm6
mulsd  %xmm11,%xmm14
mulsd  %xmm0,%xmm11
movsd  0xa76(%rip),%xmm12
movsd  0xa76(%rip),%xmm3
mulsd  %xmm4,%xmm3
movsd  0xa72(%rip),%xmm2
mulsd  %xmm4,%xmm2
mulsd  %xmm12,%xmm4
mulsd  %xmm11,%xmm4
mulsd  %xmm12,%xmm11
mulsd  %xmm9,%xmm11
mulsd  %xmm3,%xmm7
mulsd  %xmm9,%xmm3
mulsd  %xmm0,%xmm2
mulsd  %xmm9,%xmm2
mulsd  %xmm9,%xmm7
mulsd  %xmm9,%xmm9
mulsd  %xmm9,%xmm10
mulsd  %xmm9,%xmm13
mulsd  %xmm8,%xmm9
mulsd  %xmm8,%xmm3
mulsd  %xmm8,%xmm5
mulsd  %xmm1,%xmm8
mulsd  %xmm1,%xmm10
addsd  %xmm10,%xmm9
addsd  %xmm9,%xmm13
mulsd  %xmm8,%xmm11
addsd  %xmm13,%xmm11
addsd  %xmm11,%xmm3
mulsd  %xmm1,%xmm2
addsd  %xmm3,%xmm2
addsd  %xmm2,%xmm7
mulsd  %xmm8,%xmm4
addsd  %xmm7,%xmm4
addsd  %xmm4,%xmm5
mulsd  %xmm0,%xmm6
mulsd  %xmm1,%xmm6
addsd  %xmm5,%xmm6
addsd  %xmm6,%xmm14
movapd %xmm14,%xmm0
ret
movapd %xmm1,%xmm8
mulsd  %xmm1,%xmm8
movapd %xmm8,%xmm10
mulsd  %xmm8,%xmm10
movapd %xmm0,%xmm5
mulsd  %xmm0,%xmm5
movapd %xmm5,%xmm4
mulsd  %xmm5,%xmm4
movapd %xmm4,%xmm9
mulsd  %xmm4,%xmm9
movsd  0x943(%rip),%xmm12
mulsd  %xmm5,%xmm12
movsd  0x945(%rip),%xmm11
mulsd  %xmm4,%xmm11
mulsd  0x940(%rip),%xmm4
movapd %xmm4,%xmm13
mulsd  %xmm5,%xmm4
movsd  0x947(%rip),%xmm2
mulsd  %xmm9,%xmm2
mulsd  %xmm5,%xmm2
mulsd  %xmm0,%xmm5
movapd %xmm11,%xmm3
mulsd  %xmm10,%xmm3
mulsd  %xmm0,%xmm13
mulsd  %xmm10,%xmm13
mulsd  %xmm10,%xmm4
mulsd  %xmm5,%xmm11
mulsd  %xmm10,%xmm11
mulsd  %xmm10,%xmm10
movsd  0x8d2(%rip),%xmm6
mulsd  %xmm0,%xmm6
mulsd  %xmm10,%xmm6
mulsd  %xmm8,%xmm6
mulsd  %xmm8,%xmm13
movsd  0x8e7(%rip),%xmm7
mulsd  %xmm9,%xmm7
mulsd  %xmm0,%xmm7
mulsd  %xmm8,%xmm7
mulsd  %xmm1,%xmm8
mulsd  %xmm8,%xmm3
movsd  0x8bf(%rip),%xmm0
mulsd  %xmm9,%xmm0
mulsd  %xmm8,%xmm0
mulsd  %xmm10,%xmm8
addsd  %xmm6,%xmm8
mulsd  %xmm10,%xmm12
mulsd  %xmm1,%xmm12
addsd  %xmm8,%xmm12
movsd  0x87c(%rip),%xmm6
mulsd  %xmm5,%xmm6
mulsd  %xmm10,%xmm6
addsd  %xmm12,%xmm6
addsd  %xmm6,%xmm3
subsd  %xmm13,%xmm3
mulsd  %xmm1,%xmm4
addsd  %xmm3,%xmm4
subsd  %xmm11,%xmm4
addsd  %xmm4,%xmm0
addsd  %xmm0,%xmm7
mulsd  %xmm1,%xmm2
addsd  %xmm7,%xmm2
mulsd  %xmm5,%xmm9
subsd  %xmm9,%xmm2
movapd %xmm2,%xmm0
ret
movapd %xmm1,%xmm4
mulsd  %xmm1,%xmm4
movapd %xmm4,%xmm10
mulsd  %xmm4,%xmm10
movapd %xmm10,%xmm9
mulsd  %xmm10,%xmm9
movapd %xmm0,%xmm3
mulsd  %xmm0,%xmm3
movapd %xmm3,%xmm2
mulsd  %xmm3,%xmm2
movapd %xmm2,%xmm13
mulsd  %xmm2,%xmm13
movsd  0x7c2(%rip),%xmm11
movapd %xmm3,%xmm12
mulsd  %xmm11,%xmm12
mulsd  %xmm9,%xmm12
mulsd  %xmm4,%xmm12
movsd  0x7c5(%rip),%xmm14
mulsd  %xmm2,%xmm14
movapd %xmm2,%xmm8
mulsd  %xmm3,%xmm14
mulsd  %xmm10,%xmm14
mulsd  %xmm4,%xmm14
mulsd  %xmm13,%xmm11
mulsd  %xmm3,%xmm11
mulsd  %xmm4,%xmm11
mulsd  %xmm1,%xmm4
mulsd  %xmm0,%xmm3
movsd  0x765(%rip),%xmm5
movapd %xmm0,%xmm7
mulsd  %xmm5,%xmm7
mulsd  %xmm9,%xmm7
mulsd  %xmm4,%xmm7
movsd  0x75c(%rip),%xmm2
movapd %xmm3,%xmm6
mulsd  %xmm2,%xmm6
mulsd  %xmm9,%xmm6
movsd  0x74e(%rip),%xmm15
movapd %xmm0,-0x18(%rsp)
movapd %xmm8,%xmm0
mulsd  %xmm15,%xmm8
mulsd  %xmm9,%xmm8
mulsd  %xmm10,%xmm9
addsd  %xmm7,%xmm9
mulsd  %xmm13,%xmm5
mulsd  %xmm3,%xmm5
addsd  %xmm9,%xmm12
mulsd  %xmm1,%xmm6
addsd  %xmm12,%xmm6
addsd  %xmm6,%xmm8
movsd  0x713(%rip),%xmm6
mulsd  %xmm0,%xmm6
mulsd  %xmm6,%xmm3
movapd -0x18(%rsp),%xmm7
mulsd  %xmm7,%xmm6
mulsd  %xmm10,%xmm6
mulsd  %xmm4,%xmm6
addsd  %xmm8,%xmm6
addsd  %xmm6,%xmm14
mulsd  %xmm10,%xmm3
mulsd  %xmm1,%xmm3
addsd  %xmm14,%xmm3
mulsd  %xmm13,%xmm15
mulsd  %xmm10,%xmm15
addsd  %xmm3,%xmm15
mulsd  %xmm13,%xmm2
mulsd  %xmm7,%xmm2
mulsd  %xmm4,%xmm2
addsd  %xmm15,%xmm2
addsd  %xmm2,%xmm11
mulsd  %xmm1,%xmm5
addsd  %xmm11,%xmm5
mulsd  %xmm0,%xmm13
addsd  %xmm5,%xmm13
movapd %xmm13,%xmm0
ret
movapd %xmm0,%xmm10
unpcklpd %xmm1,%xmm10
mulpd  %xmm10,%xmm10
movapd %xmm10,%xmm7
mulpd  %xmm10,%xmm7
movapd %xmm7,%xmm8
movapd %xmm7,%xmm9
movapd %xmm7,%xmm11
movlpd 0x600(%rip),%xmm11
mulsd  %xmm7,%xmm9
mulpd  %xmm7,%xmm11
movsd  0x60d(%rip),%xmm12
mulsd  %xmm7,%xmm12
movsd  0x627(%rip),%xmm14
mulsd  %xmm9,%xmm14
mulsd  %xmm7,%xmm14
unpckhpd %xmm7,%xmm7
movapd %xmm10,%xmm13
mulsd  %xmm0,%xmm13
movsd  0x5b7(%rip),%xmm4
mulsd  %xmm0,%xmm4
mulsd  %xmm7,%xmm4
movapd %xmm10,%xmm6
mulsd  %xmm12,%xmm6
mulsd  %xmm7,%xmm6
mulsd  %xmm13,%xmm12
mulsd  %xmm7,%xmm12
movsd  0x5c6(%rip),%xmm15
mulsd  %xmm9,%xmm15
mulsd  %xmm0,%xmm15
mulsd  %xmm7,%xmm15
mulsd  %xmm1,%xmm7
mulsd  %xmm0,%xmm8
movapd %xmm11,%xmm0
unpckhpd %xmm11,%xmm0
mulsd  %xmm0,%xmm4
movsd  0x570(%rip),%xmm5
mulsd  %xmm10,%xmm5
mulsd  %xmm0,%xmm5
movsd  0x567(%rip),%xmm2
mulsd  %xmm13,%xmm2
mulsd  %xmm0,%xmm2
mulsd  %xmm0,%xmm11
movsd  0x559(%rip),%xmm3
mulsd  %xmm8,%xmm3
mulsd  %xmm0,%xmm3
mulsd  %xmm7,%xmm0
addsd  %xmm4,%xmm0
movsd  0x568(%rip),%xmm4
mulsd  %xmm9,%xmm4
mulsd  %xmm13,%xmm4
movsd  0x54d(%rip),%xmm13
mulsd  %xmm9,%xmm13
mulsd  %xmm10,%xmm13
unpckhpd %xmm10,%xmm10
mulsd  %xmm10,%xmm2
mulsd  %xmm10,%xmm12
mulsd  %xmm10,%xmm4
mulsd  %xmm1,%xmm10
mulsd  %xmm10,%xmm5
addsd  %xmm0,%xmm5
addsd  %xmm5,%xmm2
mulsd  %xmm1,%xmm11
addsd  %xmm2,%xmm11
addsd  %xmm11,%xmm3
mulsd  %xmm10,%xmm6
addsd  %xmm3,%xmm6
subsd  %xmm12,%xmm6
movsd  0x4e8(%rip),%xmm0
mulsd  %xmm9,%xmm0
mulsd  %xmm7,%xmm0
addsd  %xmm6,%xmm0
addsd  %xmm0,%xmm15
mulsd  %xmm10,%xmm13
addsd  %xmm15,%xmm13
addsd  %xmm13,%xmm4
mulsd  %xmm1,%xmm14
addsd  %xmm4,%xmm14
mulsd  %xmm8,%xmm9
subsd  %xmm9,%xmm14
movapd %xmm14,%xmm0
ret

LLVM IR (-O0):
define double @En(i32 %0, double %1, double %2) {
%4 = alloca i32
%5 = alloca double
%6 = alloca double
%7 = alloca double
%8 = alloca double
%9 = alloca double
%10 = alloca double
%11 = alloca double
%12 = alloca double
%13 = alloca double
%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 double
%23 = alloca double
%24 = alloca double
%25 = alloca double
%26 = alloca double
%27 = alloca double
%28 = alloca double
%29 = alloca double
store i32 %0, i32* %4
store double %1, double* %5
store double %2, double* %6
store double 0.000000e+00, double* %7
%30 = load i32, i32* %4
%31 = icmp eq i32 %30, 0
br i1 %31, label %32, label %33
32: ; preds = %3
store double 1.000000e+00, double* %7
br label %872
33: ; preds = %3
%34 = load i32, i32* %4
%35 = icmp eq i32 %34, 1
br i1 %35, label %36, label %40
36: ; preds = %33
%37 = load double, double* %6
%38 = load double, double* %5
%39 = fsub double %37, %38
store double %39, double* %7
br label %871
40: ; preds = %33
%41 = load i32, i32* %4
%42 = icmp eq i32 %41, 2
br i1 %42, label %43, label %58
43: ; preds = %40
%44 = load double, double* %6
%45 = load double, double* %6
%46 = fmul double %44, %45
store double %46, double* %8
%47 = load double, double* %5
%48 = load double, double* %5
%49 = fmul double %47, %48
store double %49, double* %10
%50 = load double, double* %8
%51 = load double, double* %5
%52 = fmul double 3.000000e+00, %51
%53 = load double, double* %6
%54 = fneg double %52
%55 = call double @llvm.fmuladd.f64(double %54, double %53, double %50)
%56 = load double, double* %10
%57 = fadd double %55, %56
store double %57, double* %7
br label %870
58: ; preds = %40
%59 = load i32, i32* %4
%60 = icmp eq i32 %59, 3
br i1 %60, label %61, label %84
61: ; preds = %58
%62 = load double, double* %6
%63 = load double, double* %6
%64 = fmul double %62, %63
store double %64, double* %8
%65 = load double, double* %5
%66 = load double, double* %5
%67 = fmul double %65, %66
store double %67, double* %11
%68 = load double, double* %8
%69 = load double, double* %6
%70 = load double, double* %5
%71 = fmul double 6.000000e+00, %70
%72 = load double, double* %8
%73 = fmul double %71, %72
%74 = fneg double %73
%75 = call double @llvm.fmuladd.f64(double %68, double %69, double %74)
%76 = load double, double* %11
%77 = fmul double 6.000000e+00, %76
%78 = load double, double* %6
%79 = call double @llvm.fmuladd.f64(double %77, double %78, double %75)
%80 = load double, double* %11
%81 = load double, double* %5
%82 = fneg double %80
%83 = call double @llvm.fmuladd.f64(double %82, double %81, double %79)
store double %83, double* %7
br label %869
84: ; preds = %58
%85 = load i32, i32* %4
%86 = icmp eq i32 %85, 4
br i1 %86, label %87, label %121
87: ; preds = %84
%88 = load double, double* %6
%89 = load double, double* %6
%90 = fmul double %88, %89
store double %90, double* %8
%91 = load double, double* %8
%92 = load double, double* %8
%93 = fmul double %91, %92
store double %93, double* %9
%94 = load double, double* %5
%95 = load double, double* %5
%96 = fmul double %94, %95
store double %96, double* %12
%97 = load double, double* %12
%98 = load double, double* %12
%99 = fmul double %97, %98
store double %99, double* %16
%100 = load double, double* %9
%101 = load double, double* %5
%102 = fmul double 1.000000e+01, %101
%103 = load double, double* %8
%104 = fmul double %102, %103
%105 = load double, double* %6
%106 = fneg double %104
%107 = call double @llvm.fmuladd.f64(double %106, double %105, double %100)
%108 = load double, double* %12
%109 = fmul double 2.000000e+01, %108
%110 = load double, double* %8
%111 = call double @llvm.fmuladd.f64(double %109, double %110, double %107)
%112 = load double, double* %12
%113 = fmul double 1.000000e+01, %112
%114 = load double, double* %5
%115 = fmul double %113, %114
%116 = load double, double* %6
%117 = fneg double %115
%118 = call double @llvm.fmuladd.f64(double %117, double %116, double %111)
%119 = load double, double* %16
%120 = fadd double %118, %119
store double %120, double* %7
br label %868
121: ; preds = %84
%122 = load i32, i32* %4
%123 = icmp eq i32 %122, 5
br i1 %123, label %124, label %166
124: ; preds = %121
%125 = load double, double* %6
%126 = load double, double* %6
%127 = fmul double %125, %126
store double %127, double* %8
%128 = load double, double* %8
%129 = load double, double* %8
%130 = fmul double %128, %129
store double %130, double* %9
%131 = load double, double* %5
%132 = load double, double* %5
%133 = fmul double %131, %132
store double %133, double* %12
%134 = load double, double* %12
%135 = load double, double* %12
%136 = fmul double %134, %135
store double %136, double* %17
%137 = load double, double* %9
%138 = load double, double* %6
%139 = load double, double* %9
%140 = fmul double 1.500000e+01, %139
%141 = load double, double* %5
%142 = fmul double %140, %141
%143 = fneg double %142
%144 = call double @llvm.fmuladd.f64(double %137, double %138, double %143)
%145 = load double, double* %12
%146 = fmul double 5.000000e+01, %145
%147 = load double, double* %8
%148 = fmul double %146, %147
%149 = load double, double* %6
%150 = call double @llvm.fmuladd.f64(double %148, double %149, double %144)
%151 = load double, double* %12
%152 = fmul double 5.000000e+01, %151
%153 = load double, double* %5
%154 = fmul double %152, %153
%155 = load double, double* %8
%156 = fneg double %154
%157 = call double @llvm.fmuladd.f64(double %156, double %155, double %150)
%158 = load double, double* %17
%159 = fmul double 1.500000e+01, %158
%160 = load double, double* %6
%161 = call double @llvm.fmuladd.f64(double %159, double %160, double %157)
%162 = load double, double* %17
%163 = load double, double* %5
%164 = fneg double %162
%165 = call double @llvm.fmuladd.f64(double %164, double %163, double %161)
store double %165, double* %7
br label %867
166: ; preds = %121
%167 = load i32, i32* %4
%168 = icmp eq i32 %167, 6
br i1 %168, label %169, label %219
169: ; preds = %166
%170 = load double, double* %6
%171 = load double, double* %6
%172 = fmul double %170, %171
store double %172, double* %8
%173 = load double, double* %8
%174 = load double, double* %8
%175 = fmul double %173, %174
store double %175, double* %9
%176 = load double, double* %5
%177 = load double, double* %5
%178 = fmul double %176, %177
store double %178, double* %13
%179 = load double, double* %13
%180 = load double, double* %13
%181 = fmul double %179, %180
store double %181, double* %18
%182 = load double, double* %9
%183 = load double, double* %8
%184 = load double, double* %5
%185 = fmul double 2.100000e+01, %184
%186 = load double, double* %9
%187 = fmul double %185, %186
%188 = load double, double* %6
%189 = fmul double %187, %188
%190 = fneg double %189
%191 = call double @llvm.fmuladd.f64(double %182, double %183, double %190)
%192 = load double, double* %13
%193 = fmul double 1.050000e+02, %192
%194 = load double, double* %9
%195 = call double @llvm.fmuladd.f64(double %193, double %194, double %191)
%196 = load double, double* %13
%197 = fmul double 1.750000e+02, %196
%198 = load double, double* %5
%199 = fmul double %197, %198
%200 = load double, double* %8
%201 = fmul double %199, %200
%202 = load double, double* %6
%203 = fneg double %201
%204 = call double @llvm.fmuladd.f64(double %203, double %202, double %195)
%205 = load double, double* %18
%206 = fmul double 1.050000e+02, %205
%207 = load double, double* %8
%208 = call double @llvm.fmuladd.f64(double %206, double %207, double %204)
%209 = load double, double* %18
%210 = fmul double 2.100000e+01, %209
%211 = load double, double* %5
%212 = fmul double %210, %211
%213 = load double, double* %6
%214 = fneg double %212
%215 = call double @llvm.fmuladd.f64(double %214, double %213, double %208)
%216 = load double, double* %18
%217 = load double, double* %13
%218 = call double @llvm.fmuladd.f64(double %216, double %217, double %215)
store double %218, double* %7
br label %866
219: ; preds = %166
%220 = load i32, i32* %4
%221 = icmp eq i32 %220, 7
br i1 %221, label %222, label %283
222: ; preds = %219
%223 = load double, double* %6
%224 = load double, double* %6
%225 = fmul double %223, %224
store double %225, double* %8
%226 = load double, double* %8
%227 = load double, double* %6
%228 = fmul double %226, %227
store double %228, double* %9
%229 = load double, double* %8
%230 = load double, double* %8
%231 = fmul double %229, %230
store double %231, double* %10
%232 = load double, double* %5
%233 = load double, double* %5
%234 = fmul double %232, %233
store double %234, double* %14
%235 = load double, double* %14
%236 = load double, double* %5
%237 = fmul double %235, %236
store double %237, double* %17
%238 = load double, double* %14
%239 = load double, double* %14
%240 = fmul double %238, %239
store double %240, double* %19
%241 = load double, double* %10
%242 = load double, double* %9
%243 = load double, double* %5
%244 = fmul double 2.800000e+01, %243
%245 = load double, double* %10
%246 = fmul double %244, %245
%247 = load double, double* %8
%248 = fmul double %246, %247
%249 = fneg double %248
%250 = call double @llvm.fmuladd.f64(double %241, double %242, double %249)
%251 = load double, double* %14
%252 = fmul double 1.960000e+02, %251
%253 = load double, double* %10
%254 = fmul double %252, %253
%255 = load double, double* %6
%256 = call double @llvm.fmuladd.f64(double %254, double %255, double %250)
%257 = load double, double* %17
%258 = fmul double 4.900000e+02, %257
%259 = load double, double* %10
%260 = fneg double %258
%261 = call double @llvm.fmuladd.f64(double %260, double %259, double %256)
%262 = load double, double* %19
%263 = fmul double 4.900000e+02, %262
%264 = load double, double* %9
%265 = call double @llvm.fmuladd.f64(double %263, double %264, double %261)
%266 = load double, double* %19
%267 = fmul double 1.960000e+02, %266
%268 = load double, double* %5
%269 = fmul double %267, %268
%270 = load double, double* %8
%271 = fneg double %269
%272 = call double @llvm.fmuladd.f64(double %271, double %270, double %265)
%273 = load double, double* %19
%274 = fmul double 2.800000e+01, %273
%275 = load double, double* %14
%276 = fmul double %274, %275
%277 = load double, double* %6
%278 = call double @llvm.fmuladd.f64(double %276, double %277, double %272)
%279 = load double, double* %19
%280 = load double, double* %17
%281 = fneg double %279
%282 = call double @llvm.fmuladd.f64(double %281, double %280, double %278)
store double %282, double* %7
br label %865
283: ; preds = %219
%284 = load i32, i32* %4
%285 = icmp eq i32 %284, 8
br i1 %285, label %286, label %358
286: ; preds = %283
%287 = load double, double* %6
%288 = load double, double* %6
%289 = fmul double %287, %288
store double %289, double* %8
%290 = load double, double* %8
%291 = load double, double* %8
%292 = fmul double %290, %291
store double %292, double* %9
%293 = load double, double* %9
%294 = load double, double* %9
%295 = fmul double %293, %294
store double %295, double* %10
%296 = load double, double* %8
%297 = load double, double* %6
%298 = fmul double %296, %297
store double %298, double* %11
%299 = load double, double* %5
%300 = load double, double* %5
%301 = fmul double %299, %300
store double %301, double* %14
%302 = load double, double* %14
%303 = load double, double* %5
%304 = fmul double %302, %303
store double %304, double* %17
%305 = load double, double* %14
%306 = load double, double* %14
%307 = fmul double %305, %306
store double %307, double* %20
%308 = load double, double* %20
%309 = load double, double* %20
%310 = fmul double %308, %309
store double %310, double* %24
%311 = load double, double* %10
%312 = load double, double* %5
%313 = fmul double 3.600000e+01, %312
%314 = load double, double* %9
%315 = fmul double %313, %314
%316 = load double, double* %11
%317 = fneg double %315
%318 = call double @llvm.fmuladd.f64(double %317, double %316, double %311)
%319 = load double, double* %14
%320 = fmul double 3.360000e+02, %319
%321 = load double, double* %9
%322 = fmul double %320, %321
%323 = load double, double* %8
%324 = call double @llvm.fmuladd.f64(double %322, double %323, double %318)
%325 = load double, double* %17
%326 = fmul double 1.176000e+03, %325
%327 = load double, double* %9
%328 = fmul double %326, %327
%329 = load double, double* %6
%330 = fneg double %328
%331 = call double @llvm.fmuladd.f64(double %330, double %329, double %324)
%332 = load double, double* %20
%333 = fmul double 1.764000e+03, %332
%334 = load double, double* %9
%335 = call double @llvm.fmuladd.f64(double %333, double %334, double %331)
%336 = load double, double* %20
%337 = fmul double 1.176000e+03, %336
%338 = load double, double* %5
%339 = fmul double %337, %338
%340 = load double, double* %11
%341 = fneg double %339
%342 = call double @llvm.fmuladd.f64(double %341, double %340, double %335)
%343 = load double, double* %20
%344 = fmul double 3.360000e+02, %343
%345 = load double, double* %14
%346 = fmul double %344, %345
%347 = load double, double* %8
%348 = call double @llvm.fmuladd.f64(double %346, double %347, double %342)
%349 = load double, double* %20
%350 = fmul double 3.600000e+01, %349
%351 = load double, double* %17
%352 = fmul double %350, %351
%353 = load double, double* %6
%354 = fneg double %352
%355 = call double @llvm.fmuladd.f64(double %354, double %353, double %348)
%356 = load double, double* %24
%357 = fadd double %355, %356
store double %357, double* %7
br label %864
358: ; preds = %283
%359 = load i32, i32* %4
%360 = icmp eq i32 %359, 9
br i1 %360, label %361, label %441
361: ; preds = %358
%362 = load double, double* %6
%363 = load double, double* %6
%364 = fmul double %362, %363
store double %364, double* %8
%365 = load double, double* %8
%366 = load double, double* %8
%367 = fmul double %365, %366
store double %367, double* %9
%368 = load double, double* %9
%369 = load double, double* %9
%370 = fmul double %368, %369
store double %370, double* %10
%371 = load double, double* %5
%372 = load double, double* %5
%373 = fmul double %371, %372
store double %373, double* %13
%374 = load double, double* %8
%375 = load double, double* %6
%376 = fmul double %374, %375
store double %376, double* %14
%377 = load double, double* %13
%378 = load double, double* %5
%379 = fmul double %377, %378
store double %379, double* %17
%380 = load double, double* %13
%381 = load double, double* %13
%382 = fmul double %380, %381
store double %382, double* %20
%383 = load double, double* %20
%384 = load double, double* %20
%385 = fmul double %383, %384
store double %385, double* %25
%386 = load double, double* %10
%387 = load double, double* %6
%388 = load double, double* %10
%389 = fmul double 4.500000e+01, %388
%390 = load double, double* %5
%391 = fmul double %389, %390
%392 = fneg double %391
%393 = call double @llvm.fmuladd.f64(double %386, double %387, double %392)
%394 = load double, double* %13
%395 = fmul double 5.400000e+02, %394
%396 = load double, double* %9
%397 = fmul double %395, %396
%398 = load double, double* %14
%399 = call double @llvm.fmuladd.f64(double %397, double %398, double %393)
%400 = load double, double* %17
%401 = fmul double 2.520000e+03, %400
%402 = load double, double* %9
%403 = fmul double %401, %402
%404 = load double, double* %8
%405 = fneg double %403
%406 = call double @llvm.fmuladd.f64(double %405, double %404, double %399)
%407 = load double, double* %20
%408 = fmul double 5.292000e+03, %407
%409 = load double, double* %9
%410 = fmul double %408, %409
%411 = load double, double* %6
%412 = call double @llvm.fmuladd.f64(double %410, double %411, double %406)
%413 = load double, double* %20
%414 = fmul double 5.292000e+03, %413
%415 = load double, double* %5
%416 = fmul double %414, %415
%417 = load double, double* %9
%418 = fneg double %416
%419 = call double @llvm.fmuladd.f64(double %418, double %417, double %412)
%420 = load double, double* %20
%421 = fmul double 2.520000e+03, %420
%422 = load double, double* %13
%423 = fmul double %421, %422
%424 = load double, double* %14
%425 = call double @llvm.fmuladd.f64(double %423, double %424, double %419)
%426 = load double, double* %20
%427 = fmul double 5.400000e+02, %426
%428 = load double, double* %17
%429 = fmul double %427, %428
%430 = load double, double* %8
%431 = fneg double %429
%432 = call double @llvm.fmuladd.f64(double %431, double %430, double %425)
%433 = load double, double* %25
%434 = fmul double 4.500000e+01, %433
%435 = load double, double* %6
%436 = call double @llvm.fmuladd.f64(double %434, double %435, double %432)
%437 = load double, double* %25
%438 = load double, double* %5
%439 = fneg double %437
%440 = call double @llvm.fmuladd.f64(double %439, double %438, double %436)
store double %440, double* %7
br label %863
441: ; preds = %358
%442 = load i32, i32* %4
%443 = icmp eq i32 %442, 10
br i1 %443, label %444, label %532
444: ; preds = %441
%445 = load double, double* %6
%446 = load double, double* %6
%447 = fmul double %445, %446
store double %447, double* %8
%448 = load double, double* %8
%449 = load double, double* %8
%450 = fmul double %448, %449
store double %450, double* %9
%451 = load double, double* %9
%452 = load double, double* %9
%453 = fmul double %451, %452
store double %453, double* %10
%454 = load double, double* %5
%455 = load double, double* %5
%456 = fmul double %454, %455
store double %456, double* %14
%457 = load double, double* %14
%458 = load double, double* %5
%459 = fmul double %457, %458
store double %459, double* %16
%460 = load double, double* %8
%461 = load double, double* %6
%462 = fmul double %460, %461
store double %462, double* %17
%463 = load double, double* %14
%464 = load double, double* %14
%465 = fmul double %463, %464
store double %465, double* %20
%466 = load double, double* %20
%467 = load double, double* %20
%468 = fmul double %466, %467
store double %468, double* %26
%469 = load double, double* %10
%470 = load double, double* %8
%471 = load double, double* %5
%472 = fmul double 5.500000e+01, %471
%473 = load double, double* %10
%474 = fmul double %472, %473
%475 = load double, double* %6
%476 = fmul double %474, %475
%477 = fneg double %476
%478 = call double @llvm.fmuladd.f64(double %469, double %470, double %477)
%479 = load double, double* %14
%480 = fmul double 8.250000e+02, %479
%481 = load double, double* %10
%482 = call double @llvm.fmuladd.f64(double %480, double %481, double %478)
%483 = load double, double* %16
%484 = fmul double 4.950000e+03, %483
%485 = load double, double* %9
%486 = fmul double %484, %485
%487 = load double, double* %17
%488 = fneg double %486
%489 = call double @llvm.fmuladd.f64(double %488, double %487, double %482)
%490 = load double, double* %20
%491 = fmul double 1.386000e+04, %490
%492 = load double, double* %9
%493 = fmul double %491, %492
%494 = load double, double* %8
%495 = call double @llvm.fmuladd.f64(double %493, double %494, double %489)
%496 = load double, double* %20
%497 = fmul double 1.940400e+04, %496
%498 = load double, double* %5
%499 = fmul double %497, %498
%500 = load double, double* %9
%501 = fmul double %499, %500
%502 = load double, double* %6
%503 = fneg double %501
%504 = call double @llvm.fmuladd.f64(double %503, double %502, double %495)
%505 = load double, double* %20
%506 = fmul double 1.386000e+04, %505
%507 = load double, double* %14
%508 = fmul double %506, %507
%509 = load double, double* %9
%510 = call double @llvm.fmuladd.f64(double %508, double %509, double %504)
%511 = load double, double* %20
%512 = fmul double 4.950000e+03, %511
%513 = load double, double* %16
%514 = fmul double %512, %513
%515 = load double, double* %17
%516 = fneg double %514
%517 = call double @llvm.fmuladd.f64(double %516, double %515, double %510)
%518 = load double, double* %26
%519 = fmul double 8.250000e+02, %518
%520 = load double, double* %8
%521 = call double @llvm.fmuladd.f64(double %519, double %520, double %517)
%522 = load double, double* %26
%523 = fmul double 5.500000e+01, %522
%524 = load double, double* %5
%525 = fmul double %523, %524
%526 = load double, double* %6
%527 = fneg double %525
%528 = call double @llvm.fmuladd.f64(double %527, double %526, double %521)
%529 = load double, double* %26
%530 = load double, double* %14
%531 = call double @llvm.fmuladd.f64(double %529, double %530, double %528)
store double %531, double* %7
br label %862
532: ; preds = %441
%533 = load i32, i32* %4
%534 = icmp eq i32 %533, 11
br i1 %534, label %535, label %632
535: ; preds = %532
%536 = load double, double* %6
%537 = load double, double* %6
%538 = fmul double %536, %537
store double %538, double* %8
%539 = load double, double* %8
%540 = load double, double* %6
%541 = fmul double %539, %540
store double %541, double* %9
%542 = load double, double* %8
%543 = load double, double* %8
%544 = fmul double %542, %543
store double %544, double* %10
%545 = load double, double* %10
%546 = load double, double* %10
%547 = fmul double %545, %546
store double %547, double* %11
%548 = load double, double* %5
%549 = load double, double* %5
%550 = fmul double %548, %549
store double %550, double* %15
%551 = load double, double* %15
%552 = load double, double* %5
%553 = fmul double %551, %552
store double %553, double* %18
%554 = load double, double* %15
%555 = load double, double* %15
%556 = fmul double %554, %555
store double %556, double* %20
%557 = load double, double* %20
%558 = load double, double* %20
%559 = fmul double %557, %558
store double %559, double* %27
%560 = load double, double* %9
%561 = load double, double* %11
%562 = load double, double* %5
%563 = fmul double 6.600000e+01, %562
%564 = load double, double* %11
%565 = fmul double %563, %564
%566 = load double, double* %8
%567 = fmul double %565, %566
%568 = fneg double %567
%569 = call double @llvm.fmuladd.f64(double %560, double %561, double %568)
%570 = load double, double* %15
%571 = fmul double 1.210000e+03, %570
%572 = load double, double* %11
%573 = fmul double %571, %572
%574 = load double, double* %6
%575 = call double @llvm.fmuladd.f64(double %573, double %574, double %569)
%576 = load double, double* %18
%577 = fmul double 9.075000e+03, %576
%578 = load double, double* %11
%579 = fneg double %577
%580 = call double @llvm.fmuladd.f64(double %579, double %578, double %575)
%581 = load double, double* %20
%582 = fmul double 3.267000e+04, %581
%583 = load double, double* %10
%584 = fmul double %582, %583
%585 = load double, double* %9
%586 = call double @llvm.fmuladd.f64(double %584, double %585, double %580)
%587 = load double, double* %20
%588 = fmul double 6.098400e+04, %587
%589 = load double, double* %5
%590 = fmul double %588, %589
%591 = load double, double* %10
%592 = fmul double %590, %591
%593 = load double, double* %8
%594 = fneg double %592
%595 = call double @llvm.fmuladd.f64(double %594, double %593, double %586)
%596 = load double, double* %20
%597 = fmul double 6.098400e+04, %596
%598 = load double, double* %15
%599 = fmul double %597, %598
%600 = load double, double* %10
%601 = fmul double %599, %600
%602 = load double, double* %6
%603 = call double @llvm.fmuladd.f64(double %601, double %602, double %595)
%604 = load double, double* %20
%605 = fmul double 3.267000e+04, %604
%606 = load double, double* %18
%607 = fmul double %605, %606
%608 = load double, double* %10
%609 = fneg double %607
%610 = call double @llvm.fmuladd.f64(double %609, double %608, double %603)
%611 = load double, double* %27
%612 = fmul double 9.075000e+03, %611
%613 = load double, double* %9
%614 = call double @llvm.fmuladd.f64(double %612, double %613, double %610)
%615 = load double, double* %27
%616 = fmul double 1.210000e+03, %615
%617 = load double, double* %5
%618 = fmul double %616, %617
%619 = load double, double* %8
%620 = fneg double %618
%621 = call double @llvm.fmuladd.f64(double %620, double %619, double %614)
%622 = load double, double* %27
%623 = fmul double 6.600000e+01, %622
%624 = load double, double* %15
%625 = fmul double %623, %624
%626 = load double, double* %6
%627 = call double @llvm.fmuladd.f64(double %625, double %626, double %621)
%628 = load double, double* %27
%629 = load double, double* %18
%630 = fneg double %628
%631 = call double @llvm.fmuladd.f64(double %630, double %629, double %627)
store double %631, double* %7
br label %861
632: ; preds = %532
%633 = load i32, i32* %4
%634 = icmp eq i32 %633, 12
br i1 %634, label %635, label %740
635: ; preds = %632
%636 = load double, double* %6
%637 = load double, double* %6
%638 = fmul double %636, %637
store double %638, double* %8
%639 = load double, double* %8
%640 = load double, double* %8
%641 = fmul double %639, %640
store double %641, double* %9
%642 = load double, double* %9
%643 = load double, double* %9
%644 = fmul double %642, %643
store double %644, double* %10
%645 = load double, double* %8
%646 = load double, double* %6
%647 = fmul double %645, %646
store double %647, double* %12
%648 = load double, double* %5
%649 = load double, double* %5
%650 = fmul double %648, %649
store double %650, double* %15
%651 = load double, double* %15
%652 = load double, double* %5
%653 = fmul double %651, %652
store double %653, double* %18
%654 = load double, double* %15
%655 = load double, double* %15
%656 = fmul double %654, %655
store double %656, double* %21
%657 = load double, double* %21
%658 = load double, double* %21
%659 = fmul double %657, %658
store double %659, double* %28
%660 = load double, double* %10
%661 = load double, double* %9
%662 = load double, double* %5
%663 = fmul double 7.800000e+01, %662
%664 = load double, double* %10
%665 = fmul double %663, %664
%666 = load double, double* %12
%667 = fmul double %665, %666
%668 = fneg double %667
%669 = call double @llvm.fmuladd.f64(double %660, double %661, double %668)
%670 = load double, double* %15
%671 = fmul double 1.716000e+03, %670
%672 = load double, double* %10
%673 = fmul double %671, %672
%674 = load double, double* %8
%675 = call double @llvm.fmuladd.f64(double %673, double %674, double %669)
%676 = load double, double* %18
%677 = fmul double 1.573000e+04, %676
%678 = load double, double* %10
%679 = fmul double %677, %678
%680 = load double, double* %6
%681 = fneg double %679
%682 = call double @llvm.fmuladd.f64(double %681, double %680, double %675)
%683 = load double, double* %21
%684 = fmul double 7.078500e+04, %683
%685 = load double, double* %10
%686 = call double @llvm.fmuladd.f64(double %684, double %685, double %682)
%687 = load double, double* %21
%688 = fmul double 1.698840e+05, %687
%689 = load double, double* %5
%690 = fmul double %688, %689
%691 = load double, double* %9
%692 = fmul double %690, %691
%693 = load double, double* %12
%694 = fneg double %692
%695 = call double @llvm.fmuladd.f64(double %694, double %693, double %686)
%696 = load double, double* %21
%697 = fmul double 2.265120e+05, %696
%698 = load double, double* %15
%699 = fmul double %697, %698
%700 = load double, double* %9
%701 = fmul double %699, %700
%702 = load double, double* %8
%703 = call double @llvm.fmuladd.f64(double %701, double %702, double %695)
%704 = load double, double* %21
%705 = fmul double 1.698840e+05, %704
%706 = load double, double* %18
%707 = fmul double %705, %706
%708 = load double, double* %9
%709 = fmul double %707, %708
%710 = load double, double* %6
%711 = fneg double %709
%712 = call double @llvm.fmuladd.f64(double %711, double %710, double %703)
%713 = load double, double* %28
%714 = fmul double 7.078500e+04, %713
%715 = load double, double* %9
%716 = call double @llvm.fmuladd.f64(double %714, double %715, double %712)
%717 = load double, double* %28
%718 = fmul double 1.573000e+04, %717
%719 = load double, double* %5
%720 = fmul double %718, %719
%721 = load double, double* %12
%722 = fneg double %720
%723 = call double @llvm.fmuladd.f64(double %722, double %721, double %716)
%724 = load double, double* %28
%725 = fmul double 1.716000e+03, %724
%726 = load double, double* %15
%727 = fmul double %725, %726
%728 = load double, double* %8
%729 = call double @llvm.fmuladd.f64(double %727, double %728, double %723)
%730 = load double, double* %28
%731 = fmul double 7.800000e+01, %730
%732 = load double, double* %18
%733 = fmul double %731, %732
%734 = load double, double* %6
%735 = fneg double %733
%736 = call double @llvm.fmuladd.f64(double %735, double %734, double %729)
%737 = load double, double* %28
%738 = load double, double* %21
%739 = call double @llvm.fmuladd.f64(double %737, double %738, double %736)
store double %739, double* %7
br label %860
740: ; preds = %632
%741 = load i32, i32* %4
%742 = icmp eq i32 %741, 13
br i1 %742, label %743, label %859
743: ; preds = %740
%744 = load double, double* %6
%745 = load double, double* %6
%746 = fmul double %744, %745
store double %746, double* %8
%747 = load double, double* %8
%748 = load double, double* %8
%749 = fmul double %747, %748
store double %749, double* %9
%750 = load double, double* %9
%751 = load double, double* %6
%752 = fmul double %750, %751
store double %752, double* %10
%753 = load double, double* %9
%754 = load double, double* %9
%755 = fmul double %753, %754
store double %755, double* %11
%756 = load double, double* %5
%757 = load double, double* %5
%758 = fmul double %756, %757
store double %758, double* %15
%759 = load double, double* %8
%760 = load double, double* %6
%761 = fmul double %759, %760
store double %761, double* %16
%762 = load double, double* %15
%763 = load double, double* %5
%764 = fmul double %762, %763
store double %764, double* %19
%765 = load double, double* %15
%766 = load double, double* %15
%767 = fmul double %765, %766
store double %767, double* %22
%768 = load double, double* %22
%769 = load double, double* %5
%770 = fmul double %768, %769
store double %770, double* %23
%771 = load double, double* %22
%772 = load double, double* %22
%773 = fmul double %771, %772
store double %773, double* %29
%774 = load double, double* %11
%775 = load double, double* %10
%776 = load double, double* %5
%777 = fmul double 9.100000e+01, %776
%778 = load double, double* %9
%779 = fmul double %777, %778
%780 = load double, double* %11
%781 = fmul double %779, %780
%782 = fneg double %781
%783 = call double @llvm.fmuladd.f64(double %774, double %775, double %782)
%784 = load double, double* %15
%785 = fmul double 2.366000e+03, %784
%786 = load double, double* %11
%787 = fmul double %785, %786
%788 = load double, double* %16
%789 = call double @llvm.fmuladd.f64(double %787, double %788, double %783)
%790 = load double, double* %19
%791 = fmul double 2.602600e+04, %790
%792 = load double, double* %11
%793 = fmul double %791, %792
%794 = load double, double* %8
%795 = fneg double %793
%796 = call double @llvm.fmuladd.f64(double %795, double %794, double %789)
%797 = load double, double* %22
%798 = fmul double 1.431430e+05, %797
%799 = load double, double* %11
%800 = fmul double %798, %799
%801 = load double, double* %6
%802 = call double @llvm.fmuladd.f64(double %800, double %801, double %796)
%803 = load double, double* %23
%804 = fmul double 4.294290e+05, %803
%805 = load double, double* %11
%806 = fneg double %804
%807 = call double @llvm.fmuladd.f64(double %806, double %805, double %802)
%808 = load double, double* %22
%809 = fmul double 7.361640e+05, %808
%810 = load double, double* %15
%811 = fmul double %809, %810
%812 = load double, double* %9
%813 = fmul double %811, %812
%814 = load double, double* %16
%815 = call double @llvm.fmuladd.f64(double %813, double %814, double %807)
%816 = load double, double* %22
%817 = fmul double 7.361640e+05, %816
%818 = load double, double* %19
%819 = fmul double %817, %818
%820 = load double, double* %9
%821 = fmul double %819, %820
%822 = load double, double* %8
%823 = fneg double %821
%824 = call double @llvm.fmuladd.f64(double %823, double %822, double %815)
%825 = load double, double* %29
%826 = fmul double 4.294290e+05, %825
%827 = load double, double* %10
%828 = call double @llvm.fmuladd.f64(double %826, double %827, double %824)
%829 = load double, double* %29
%830 = fmul double 1.431430e+05, %829
%831 = load double, double* %5
%832 = fmul double %830, %831
%833 = load double, double* %9
%834 = fneg double %832
%835 = call double @llvm.fmuladd.f64(double %834, double %833, double %828)
%836 = load double, double* %29
%837 = fmul double 2.602600e+04, %836
%838 = load double, double* %15
%839 = fmul double %837, %838
%840 = load double, double* %16
%841 = call double @llvm.fmuladd.f64(double %839, double %840, double %835)
%842 = load double, double* %29
%843 = fmul double 2.366000e+03, %842
%844 = load double, double* %19
%845 = fmul double %843, %844
%846 = load double, double* %8
%847 = fneg double %845
%848 = call double @llvm.fmuladd.f64(double %847, double %846, double %841)
%849 = load double, double* %29
%850 = fmul double 9.100000e+01, %849
%851 = load double, double* %22
%852 = fmul double %850, %851
%853 = load double, double* %6
%854 = call double @llvm.fmuladd.f64(double %852, double %853, double %848)
%855 = load double, double* %29
%856 = load double, double* %23
%857 = fneg double %855
%858 = call double @llvm.fmuladd.f64(double %857, double %856, double %854)
store double %858, double* %7
br label %859
859: ; preds = %743, %740
br label %860
860: ; preds = %859, %635
br label %861
861: ; preds = %860, %535
br label %862
862: ; preds = %861, %444
br label %863
863: ; preds = %862, %361
br label %864
864: ; preds = %863, %286
br label %865
865: ; preds = %864, %222
br label %866
866: ; preds = %865, %169
br label %867
867: ; preds = %866, %124
br label %868
868: ; preds = %867, %87
br label %869
869: ; preds = %868, %61
br label %870
870: ; preds = %869, %43
br label %871
871: ; preds = %870, %36
br label %872
872: ; preds = %871, %32
%873 = load double, double* %7
ret double %873
}

LLVM IR (-O2):
define double @En(i32 %0, double %1, double %2) {
switch i32 %0, label %344 [
i32 0, label %345
i32 1, label %4
i32 2, label %6
i32 3, label %12
i32 4, label %22
i32 5, label %36
i32 6, label %54
i32 7, label %75
i32 8, label %101
i32 9, label %131
i32 10, label %165
i32 11, label %201
i32 12, label %243
i32 13, label %287
]
4: ; preds = %3
%5 = fsub double %2, %1
br label %345
6: ; preds = %3
%7 = fmul double %2, %2
%8 = fmul double %1, %1
%9 = fmul double %1, -3.000000e+00
%10 = tail call double @llvm.fmuladd.f64(double %9, double %2, double %7)
%11 = fadd double %8, %10
br label %345
12: ; preds = %3
%13 = fmul double %2, %2
%14 = fmul double %1, %1
%15 = fmul double %1, -6.000000e+00
%16 = fmul double %15, %13
%17 = tail call double @llvm.fmuladd.f64(double %13, double %2, double %16)
%18 = fmul double %14, 6.000000e+00
%19 = tail call double @llvm.fmuladd.f64(double %18, double %2, double %17)
%20 = fneg double %14
%21 = tail call double @llvm.fmuladd.f64(double %20, double %1, double %19)
br label %345
22: ; preds = %3
%23 = fmul double %2, %2
%24 = fmul double %23, %23
%25 = fmul double %1, %1
%26 = fmul double %25, %25
%27 = fmul double %1, -1.000000e+01
%28 = fmul double %27, %23
%29 = tail call double @llvm.fmuladd.f64(double %28, double %2, double %24)
%30 = fmul double %25, 2.000000e+01
%31 = tail call double @llvm.fmuladd.f64(double %30, double %23, double %29)
%32 = fmul double %25, -1.000000e+01
%33 = fmul double %32, %1
%34 = tail call double @llvm.fmuladd.f64(double %33, double %2, double %31)
%35 = fadd double %26, %34
br label %345
36: ; preds = %3
%37 = fmul double %2, %2
%38 = fmul double %37, %37
%39 = fmul double %1, %1
%40 = fmul double %39, %39
%41 = fmul double %38, -1.500000e+01
%42 = fmul double %41, %1
%43 = tail call double @llvm.fmuladd.f64(double %38, double %2, double %42)
%44 = fmul double %39, 5.000000e+01
%45 = fmul double %44, %37
%46 = tail call double @llvm.fmuladd.f64(double %45, double %2, double %43)
%47 = fneg double %44
%48 = fmul double %47, %1
%49 = tail call double @llvm.fmuladd.f64(double %48, double %37, double %46)
%50 = fmul double %40, 1.500000e+01
%51 = tail call double @llvm.fmuladd.f64(double %50, double %2, double %49)
%52 = fneg double %40
%53 = tail call double @llvm.fmuladd.f64(double %52, double %1, double %51)
br label %345
54: ; preds = %3
%55 = fmul double %2, %2
%56 = fmul double %55, %55
%57 = fmul double %1, %1
%58 = fmul double %57, %57
%59 = fmul double %1, -2.100000e+01
%60 = fmul double %59, %56
%61 = fmul double %60, %2
%62 = tail call double @llvm.fmuladd.f64(double %56, double %55, double %61)
%63 = fmul double %57, 1.050000e+02
%64 = tail call double @llvm.fmuladd.f64(double %63, double %56, double %62)
%65 = fmul double %57, -1.750000e+02
%66 = fmul double %65, %1
%67 = fmul double %55, %66
%68 = tail call double @llvm.fmuladd.f64(double %67, double %2, double %64)
%69 = fmul double %58, 1.050000e+02
%70 = tail call double @llvm.fmuladd.f64(double %69, double %55, double %68)
%71 = fmul double %58, -2.100000e+01
%72 = fmul double %71, %1
%73 = tail call double @llvm.fmuladd.f64(double %72, double %2, double %70)
%74 = tail call double @llvm.fmuladd.f64(double %58, double %57, double %73)
br label %345
75: ; preds = %3
%76 = fmul double %2, %2
%77 = fmul double %76, %2
%78 = fmul double %76, %76
%79 = fmul double %1, %1
%80 = fmul double %79, %1
%81 = fmul double %79, %79
%82 = fmul double %1, -2.800000e+01
%83 = fmul double %82, %78
%84 = fmul double %76, %83
%85 = tail call double @llvm.fmuladd.f64(double %78, double %77, double %84)
%86 = fmul double %79, 1.960000e+02
%87 = fmul double %86, %78
%88 = tail call double @llvm.fmuladd.f64(double %87, double %2, double %85)
%89 = fmul double %80, -4.900000e+02
%90 = tail call double @llvm.fmuladd.f64(double %89, double %78, double %88)
%91 = fmul double %81, 4.900000e+02
%92 = tail call double @llvm.fmuladd.f64(double %91, double %77, double %90)
%93 = fmul double %81, -1.960000e+02
%94 = fmul double %93, %1
%95 = tail call double @llvm.fmuladd.f64(double %94, double %76, double %92)
%96 = fmul double %81, 2.800000e+01
%97 = fmul double %79, %96
%98 = tail call double @llvm.fmuladd.f64(double %97, double %2, double %95)
%99 = fneg double %81
%100 = tail call double @llvm.fmuladd.f64(double %99, double %80, double %98)
br label %345
101: ; preds = %3
%102 = fmul double %2, %2
%103 = fmul double %102, %102
%104 = fmul double %103, %103
%105 = fmul double %102, %2
%106 = fmul double %1, %1
%107 = fmul double %106, %1
%108 = fmul double %106, %106
%109 = fmul double %108, %108
%110 = fmul double %1, -3.600000e+01
%111 = fmul double %110, %103
%112 = tail call double @llvm.fmuladd.f64(double %111, double %105, double %104)
%113 = fmul double %106, 3.360000e+02
%114 = fmul double %113, %103
%115 = tail call double @llvm.fmuladd.f64(double %114, double %102, double %112)
%116 = fmul double %107, -1.176000e+03
%117 = fmul double %116, %103
%118 = tail call double @llvm.fmuladd.f64(double %117, double %2, double %115)
%119 = fmul double %108, 1.764000e+03
%120 = tail call double @llvm.fmuladd.f64(double %119, double %103, double %118)
%121 = fmul double %108, -1.176000e+03
%122 = fmul double %121, %1
%123 = tail call double @llvm.fmuladd.f64(double %122, double %105, double %120)
%124 = fmul double %108, 3.360000e+02
%125 = fmul double %106, %124
%126 = tail call double @llvm.fmuladd.f64(double %125, double %102, double %123)
%127 = fmul double %108, -3.600000e+01
%128 = fmul double %107, %127
%129 = tail call double @llvm.fmuladd.f64(double %128, double %2, double %126)
%130 = fadd double %109, %129
br label %345
131: ; preds = %3
%132 = fmul double %2, %2
%133 = fmul double %132, %132
%134 = fmul double %133, %133
%135 = fmul double %1, %1
%136 = fmul double %132, %2
%137 = fmul double %135, %1
%138 = fmul double %135, %135
%139 = fmul double %138, %138
%140 = fmul double %134, -4.500000e+01
%141 = fmul double %140, %1
%142 = tail call double @llvm.fmuladd.f64(double %134, double %2, double %141)
%143 = fmul double %135, 5.400000e+02
%144 = fmul double %143, %133
%145 = tail call double @llvm.fmuladd.f64(double %144, double %136, double %142)
%146 = fmul double %137, -2.520000e+03
%147 = fmul double %146, %133
%148 = tail call double @llvm.fmuladd.f64(double %147, double %132, double %145)
%149 = fmul double %138, 5.292000e+03
%150 = fmul double %149, %133
%151 = tail call double @llvm.fmuladd.f64(double %150, double %2, double %148)
%152 = fneg double %149
%153 = fmul double %152, %1
%154 = tail call double @llvm.fmuladd.f64(double %153, double %133, double %151)
%155 = fmul double %138, 2.520000e+03
%156 = fmul double %135, %155
%157 = tail call double @llvm.fmuladd.f64(double %156, double %136, double %154)
%158 = fmul double %138, -5.400000e+02
%159 = fmul double %137, %158
%160 = tail call double @llvm.fmuladd.f64(double %159, double %132, double %157)
%161 = fmul double %139, 4.500000e+01
%162 = tail call double @llvm.fmuladd.f64(double %161, double %2, double %160)
%163 = fneg double %139
%164 = tail call double @llvm.fmuladd.f64(double %163, double %1, double %162)
br label %345
165: ; preds = %3
%166 = fmul double %2, %2
%167 = fmul double %166, %166
%168 = fmul double %167, %167
%169 = fmul double %1, %1
%170 = fmul double %169, %1
%171 = fmul double %166, %2
%172 = fmul double %169, %169
%173 = fmul double %172, %172
%174 = fmul double %1, -5.500000e+01
%175 = fmul double %174, %168
%176 = fmul double %175, %2
%177 = tail call double @llvm.fmuladd.f64(double %168, double %166, double %176)
%178 = fmul double %169, 8.250000e+02
%179 = tail call double @llvm.fmuladd.f64(double %178, double %168, double %177)
%180 = fmul double %170, -4.950000e+03
%181 = fmul double %180, %167
%182 = tail call double @llvm.fmuladd.f64(double %181, double %171, double %179)
%183 = fmul double %172, 1.386000e+04
%184 = fmul double %183, %167
%185 = tail call double @llvm.fmuladd.f64(double %184, double %166, double %182)
%186 = fmul double %172, -1.940400e+04
%187 = fmul double %186, %1
%188 = fmul double %167, %187
%189 = tail call double @llvm.fmuladd.f64(double %188, double %2, double %185)
%190 = fmul double %169, %183
%191 = tail call double @llvm.fmuladd.f64(double %190, double %167, double %189)
%192 = fmul double %172, -4.950000e+03
%193 = fmul double %170, %192
%194 = tail call double @llvm.fmuladd.f64(double %193, double %171, double %191)
%195 = fmul double %173, 8.250000e+02
%196 = tail call double @llvm.fmuladd.f64(double %195, double %166, double %194)
%197 = fmul double %173, -5.500000e+01
%198 = fmul double %197, %1
%199 = tail call double @llvm.fmuladd.f64(double %198, double %2, double %196)
%200 = tail call double @llvm.fmuladd.f64(double %173, double %169, double %199)
br label %345
201: ; preds = %3
%202 = fmul double %2, %2
%203 = fmul double %202, %2
%204 = fmul double %202, %202
%205 = fmul double %204, %204
%206 = fmul double %1, %1
%207 = fmul double %206, %1
%208 = fmul double %206, %206
%209 = fmul double %208, %208
%210 = fmul double %1, -6.600000e+01
%211 = fmul double %210, %205
%212 = fmul double %202, %211
%213 = tail call double @llvm.fmuladd.f64(double %203, double %205, double %212)
%214 = fmul double %206, 1.210000e+03
%215 = fmul double %214, %205
%216 = tail call double @llvm.fmuladd.f64(double %215, double %2, double %213)
%217 = fmul double %207, -9.075000e+03
%218 = tail call double @llvm.fmuladd.f64(double %217, double %205, double %216)
%219 = fmul double %208, 3.267000e+04
%220 = fmul double %219, %204
%221 = tail call double @llvm.fmuladd.f64(double %220, double %203, double %218)
%222 = fmul double %208, 6.098400e+04
%223 = fneg double %222
%224 = fmul double %223, %1
%225 = fmul double %204, %224
%226 = tail call double @llvm.fmuladd.f64(double %225, double %202, double %221)
%227 = fmul double %206, %222
%228 = fmul double %204, %227
%229 = tail call double @llvm.fmuladd.f64(double %228, double %2, double %226)
%230 = fneg double %219
%231 = fmul double %207, %230
%232 = tail call double @llvm.fmuladd.f64(double %231, double %204, double %229)
%233 = fmul double %209, 9.075000e+03
%234 = tail call double @llvm.fmuladd.f64(double %233, double %203, double %232)
%235 = fmul double %209, -1.210000e+03
%236 = fmul double %235, %1
%237 = tail call double @llvm.fmuladd.f64(double %236, double %202, double %234)
%238 = fmul double %209, 6.600000e+01
%239 = fmul double %206, %238
%240 = tail call double @llvm.fmuladd.f64(double %239, double %2, double %237)
%241 = fneg double %209
%242 = tail call double @llvm.fmuladd.f64(double %241, double %207, double %240)
br label %345
243: ; preds = %3
%244 = fmul double %2, %2
%245 = fmul double %244, %244
%246 = fmul double %245, %245
%247 = fmul double %244, %2
%248 = fmul double %1, %1
%249 = fmul double %248, %1
%250 = fmul double %248, %248
%251 = fmul double %250, %250
%252 = fmul double %1, -7.800000e+01
%253 = fmul double %252, %246
%254 = fmul double %247, %253
%255 = tail call double @llvm.fmuladd.f64(double %246, double %245, double %254)
%256 = fmul double %248, 1.716000e+03
%257 = fmul double %256, %246
%258 = tail call double @llvm.fmuladd.f64(double %257, double %244, double %255)
%259 = fmul double %249, -1.573000e+04
%260 = fmul double %259, %246
%261 = tail call double @llvm.fmuladd.f64(double %260, double %2, double %258)
%262 = fmul double %250, 7.078500e+04
%263 = tail call double @llvm.fmuladd.f64(double %262, double %246, double %261)
%264 = fmul double %250, -1.698840e+05
%265 = fmul double %264, %1
%266 = fmul double %245, %265
%267 = tail call double @llvm.fmuladd.f64(double %266, double %247, double %263)
%268 = fmul double %250, 2.265120e+05
%269 = fmul double %248, %268
%270 = fmul double %245, %269
%271 = tail call double @llvm.fmuladd.f64(double %270, double %244, double %267)
%272 = fmul double %249, %264
%273 = fmul double %245, %272
%274 = tail call double @llvm.fmuladd.f64(double %273, double %2, double %271)
%275 = fmul double %251, 7.078500e+04
%276 = tail call double @llvm.fmuladd.f64(double %275, double %245, double %274)
%277 = fmul double %251, -1.573000e+04
%278 = fmul double %277, %1
%279 = tail call double @llvm.fmuladd.f64(double %278, double %247, double %276)
%280 = fmul double %251, 1.716000e+03
%281 = fmul double %248, %280
%282 = tail call double @llvm.fmuladd.f64(double %281, double %244, double %279)
%283 = fmul double %251, -7.800000e+01
%284 = fmul double %249, %283
%285 = tail call double @llvm.fmuladd.f64(double %284, double %2, double %282)
%286 = tail call double @llvm.fmuladd.f64(double %251, double %250, double %285)
br label %345
287: ; preds = %3
%288 = insertelement <2 x double> poison, double %1, i64 0
%289 = insertelement <2 x double> %288, double %2, i64 1
%290 = fmul <2 x double> %289, %289
%291 = fmul <2 x double> %290, %290
%292 = extractelement <2 x double> %291, i64 1
%293 = fmul double %292, %2
%294 = extractelement <2 x double> %290, i64 1
%295 = fmul double %294, %2
%296 = extractelement <2 x double> %290, i64 0
%297 = fmul double %296, %1
%298 = extractelement <2 x double> %291, i64 0
%299 = fmul double %298, %1
%300 = fmul <2 x double> %291, %291
%301 = extractelement <2 x double> %300, i64 0
%302 = fmul double %1, -9.100000e+01
%303 = fmul double %302, %292
%304 = insertelement <2 x double> %291, double 1.431430e+05, i64 0
%305 = fmul <2 x double> %291, %304
%306 = extractelement <2 x double> %305, i64 1
%307 = fmul double %303, %306
%308 = tail call double @llvm.fmuladd.f64(double %306, double %293, double %307)
%309 = fmul double %296, 2.366000e+03
%310 = fmul double %309, %306
%311 = tail call double @llvm.fmuladd.f64(double %310, double %295, double %308)
%312 = fmul double %297, -2.602600e+04
%313 = fmul double %312, %306
%314 = tail call double @llvm.fmuladd.f64(double %313, double %294, double %311)
%315 = extractelement <2 x double> %305, i64 0
%316 = fmul double %315, %306
%317 = tail call double @llvm.fmuladd.f64(double %316, double %2, double %314)
%318 = fmul double %299, -4.294290e+05
%319 = tail call double @llvm.fmuladd.f64(double %318, double %306, double %317)
%320 = fmul double %298, 7.361640e+05
%321 = fmul double %296, %320
%322 = fmul double %292, %321
%323 = tail call double @llvm.fmuladd.f64(double %322, double %295, double %319)
%324 = fneg double %320
%325 = fmul double %297, %324
%326 = fmul double %292, %325
%327 = tail call double @llvm.fmuladd.f64(double %326, double %294, double %323)
%328 = fmul double %301, 4.294290e+05
%329 = tail call double @llvm.fmuladd.f64(double %328, double %293, double %327)
%330 = fmul double %301, -1.431430e+05
%331 = fmul double %330, %1
%332 = tail call double @llvm.fmuladd.f64(double %331, double %292, double %329)
%333 = fmul double %301, 2.602600e+04
%334 = fmul double %296, %333
%335 = tail call double @llvm.fmuladd.f64(double %334, double %295, double %332)
%336 = fmul double %301, -2.366000e+03
%337 = fmul double %297, %336
%338 = tail call double @llvm.fmuladd.f64(double %337, double %294, double %335)
%339 = fmul double %301, 9.100000e+01
%340 = fmul double %298, %339
%341 = tail call double @llvm.fmuladd.f64(double %340, double %2, double %338)
%342 = fneg double %301
%343 = tail call double @llvm.fmuladd.f64(double %342, double %299, double %341)
br label %345
344: ; preds = %3
br label %345
345: ; preds = %3, %344, %4, %12, %36, %75, %131, %201, %287, %243, %165, %101, %54, %22, %6
%346 = phi double [ %5, %4 ], [ %11, %6 ], [ %21, %12 ], [ %35, %22 ], [ %53, %36 ], [ %74, %54 ], [ %100, %75 ], [ %130, %101 ], [ %164, %131 ], [ %200, %165 ], [ %242, %201 ], [ %286, %243 ], [ %343, %287 ], [ 1.000000e+00, %3 ], [ 0.000000e+00, %344 ]
ret double %346
}