void calcImgProjJacRTS(double a[5], double qr0[4], double v[3], double t[3],
                       double M[3], double jacmRT[2][6], double jacmS[2][3]) {
  double t1;
  double t10;
  double t107;
  double t109;
  double t11;
  double t118;
  double t12;
  double t126;
  double t127;
  double t14;
  double t141;
  double t145;
  double t146;
  double t147;
  double t15;
  double t150;
  double t152;
  double t159;
  double t16;
  double t162;
  double t165;
  double t168;
  double t170;
  double t172;
  double t175;
  double t18;
  double t180;
  double t185;
  double t187;
  double t19;
  double t192;
  double t194;
  double t2;
  double t206;
  double t21;
  double t216;
  double t22;
  double t227;
  double t23;
  double t230;
  double t233;
  double t235;
  double t237;
  double t240;
  double t245;
  double t25;
  double t250;
  double t252;
  double t257;
  double t259;
  double t27;
  double t271;
  double t28;
  double t281;
  double t293;
  double t294;
  double t296;
  double t299;
  double t3;
  double t30;
  double t302;
  double t303;
  double t305;
  double t306;
  double t309;
  double t324;
  double t325;
  double t327;
  double t330;
  double t331;
  double t347;
  double t35;
  double t350;
  double t37;
  double t4;
  double t43;
  double t49;
  double t5;
  double t51;
  double t52;
  double t54;
  double t56;
  double t6;
  double t61;
  double t65;
  double t7;
  double t70;
  double t75;
  double t76;
  double t81;
  double t82;
  double t87;
  double t88;
  double t9;
  double t93;
  double t94;
  double t98;
  {
    t1 = a[0];
    t2 = v[0];
    t3 = t2 * t2;
    t4 = v[1];
    t5 = t4 * t4;
    t6 = v[2];
    t7 = t6 * t6;
    t9 = sqrt(1.0 - t3 - t5 - t7);
    t10 = 1 / t9;
    t11 = qr0[1];
    t12 = t11 * t10;
    t14 = qr0[0];
    t15 = -t12 * t2 + t14;
    t16 = M[0];
    t18 = qr0[2];
    t19 = t18 * t10;
    t21 = qr0[3];
    t22 = -t19 * t2 - t21;
    t23 = M[1];
    t25 = t10 * t21;
    t27 = -t25 * t2 + t18;
    t28 = M[2];
    t30 = -t15 * t16 - t22 * t23 - t27 * t28;
    t35 = -t9 * t11 - t2 * t14 - t4 * t21 + t6 * t18;
    t37 = -t35;
    t43 = t9 * t18 + t4 * t14 + t6 * t11 - t2 * t21;
    t49 = t9 * t21 + t6 * t14 + t2 * t18 - t11 * t4;
    t51 = -t37 * t16 - t43 * t23 - t49 * t28;
    t52 = -t15;
    t54 = t10 * t14;
    t56 = -t54 * t2 - t11;
    t61 = t9 * t14 - t2 * t11 - t4 * t18 - t6 * t21;
    t65 = t61 * t16 + t43 * t28 - t23 * t49;
    t70 = t56 * t16 + t22 * t28 - t23 * t27;
    t75 = t56 * t23 + t27 * t16 - t28 * t15;
    t76 = -t49;
    t81 = t61 * t23 + t49 * t16 - t37 * t28;
    t82 = -t27;
    t87 = t56 * t28 + t23 * t15 - t22 * t16;
    t88 = -t43;
    t93 = t61 * t28 + t37 * t23 - t43 * t16;
    t94 = -t22;
    t98 = a[4];
    t107 = t30 * t88 + t94 * t51 + t56 * t81 + t61 * t75 + t87 * t35 +
           t93 * t52 - t70 * t76 - t82 * t65;
    t109 = a[1];
    t118 = t30 * t76 + t82 * t51 + t56 * t93 + t61 * t87 + t70 * t88 +
           t65 * t94 - t35 * t75 - t81 * t52;
    t126 = t76 * t51 + t61 * t93 + t65 * t88 - t81 * t35 + t[2];
    t127 = 1 / t126;
    t141 = t51 * t88 + t61 * t81 + t93 * t35 - t65 * t76 + t[1];
    t145 = t126 * t126;
    t146 = 1 / t145;
    t147 = (t1 * (t35 * t51 + t61 * t65 + t81 * t76 - t93 * t88 + t[0]) +
            t98 * t141 + t126 * t109) *
           t146;
    jacmRT[0][0] = (t1 * (t30 * t35 + t52 * t51 + t56 * t65 + t61 * t70 +
                          t76 * t75 + t81 * t82 - t88 * t87 - t93 * t94) +
                    t98 * t107 + t109 * t118) *
                       t127 -
                   t118 * t147;
    t150 = t1 * a[3];
    t152 = a[2];
    t159 = (t150 * t141 + t126 * t152) * t146;
    jacmRT[1][0] = (t107 * t150 + t152 * t118) * t127 - t159 * t118;
    t162 = -t12 * t4 + t21;
    t165 = -t19 * t4 + t14;
    t168 = -t25 * t4 - t11;
    t170 = -t162 * t16 - t165 * t23 - t168 * t28;
    t172 = -t162;
    t175 = -t54 * t4 - t18;
    t180 = t175 * t16 + t165 * t28 - t168 * t23;
    t185 = t175 * t23 + t168 * t16 - t162 * t28;
    t187 = -t168;
    t192 = t175 * t28 + t162 * t23 - t165 * t16;
    t194 = -t165;
    t206 = t170 * t88 + t51 * t194 + t175 * t81 + t61 * t185 + t192 * t35 +
           t93 * t172 - t76 * t180 - t65 * t187;
    t216 = t170 * t76 + t51 * t187 + t93 * t175 + t61 * t192 + t180 * t88 +
           t65 * t194 - t185 * t35 - t81 * t172;
    jacmRT[0][1] = (t1 * (t170 * t35 + t172 * t51 + t175 * t65 + t180 * t61 +
                          t185 * t76 + t81 * t187 - t192 * t88 - t93 * t194) +
                    t98 * t206 + t109 * t216) *
                       t127 -
                   t147 * t216;
    jacmRT[1][1] = (t150 * t206 + t152 * t216) * t127 - t159 * t216;
    t227 = -t12 * t6 - t18;
    t230 = -t19 * t6 + t11;
    t233 = -t25 * t6 + t14;
    t235 = -t227 * t16 - t23 * t230 - t233 * t28;
    t237 = -t227;
    t240 = -t54 * t6 - t21;
    t245 = t240 * t16 + t230 * t28 - t233 * t23;
    t250 = t23 * t240 + t233 * t16 - t227 * t28;
    t252 = -t233;
    t257 = t240 * t28 + t227 * t23 - t230 * t16;
    t259 = -t230;
    t271 = t235 * t88 + t51 * t259 + t81 * t240 + t61 * t250 + t257 * t35 +
           t93 * t237 - t245 * t76 - t65 * t252;
    t281 = t235 * t76 + t51 * t252 + t240 * t93 + t61 * t257 + t245 * t88 +
           t259 * t65 - t250 * t35 - t81 * t237;
    jacmRT[0][2] = (t1 * (t235 * t35 + t237 * t51 + t240 * t65 + t61 * t245 +
                          t250 * t76 + t81 * t252 - t257 * t88 - t93 * t259) +
                    t271 * t98 + t281 * t109) *
                       t127 -
                   t147 * t281;
    jacmRT[1][2] = (t150 * t271 + t281 * t152) * t127 - t159 * t281;
    jacmRT[0][3] = t127 * t1;
    jacmRT[1][3] = 0.0;
    jacmRT[0][4] = t98 * t127;
    jacmRT[1][4] = t150 * t127;
    jacmRT[0][5] = t109 * t127 - t147;
    jacmRT[1][5] = t152 * t127 - t159;
    t293 = t35 * t35;
    t294 = t61 * t61;
    t296 = t88 * t88;
    t299 = t35 * t88;
    t302 = t61 * t76;
    t303 = 2.0 * t299 + t61 * t49 - t302;
    t305 = t35 * t76;
    t306 = t61 * t88;
    t309 = t305 + 2.0 * t306 - t49 * t35;
    jacmS[0][0] =
        (t1 * (t293 + t294 + t49 * t76 - t296) + t98 * t303 + t109 * t309) *
            t127 -
        t147 * t309;
    jacmS[1][0] = (t150 * t303 + t152 * t309) * t127 - t159 * t309;
    t324 = t76 * t76;
    t325 = t296 + t294 + t35 * t37 - t324;
    t327 = t76 * t88;
    t330 = t61 * t35;
    t331 = 2.0 * t327 + t61 * t37 - t330;
    jacmS[0][1] =
        (t1 * (t299 + 2.0 * t302 - t37 * t88) + t98 * t325 + t109 * t331) *
            t127 -
        t147 * t331;
    jacmS[1][1] = (t150 * t325 + t152 * t331) * t127 - t159 * t331;
    t347 = t327 + 2.0 * t330 - t43 * t76;
    t350 = t324 + t294 + t43 * t88 - t293;
    jacmS[0][2] =
        (t1 * (2.0 * t305 + t61 * t43 - t306) + t98 * t347 + t350 * t109) *
            t127 -
        t147 * t350;
    jacmS[1][2] = (t150 * t347 + t152 * t350) * t127 - t159 * t350;
    return;
  }
}


x86 assembly (clang, -O0):
<calcImgProjJacRTS>:
push   %rbp
mov    %rsp,%rbp
sub    $0x340,%rsp
mov    0x10(%rbp),%rax
mov    %rdi,-0x8(%rbp)
mov    %rsi,-0x10(%rbp)
mov    %rdx,-0x18(%rbp)
mov    %rcx,-0x20(%rbp)
mov    %r8,-0x28(%rbp)
mov    %r9,-0x30(%rbp)
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0x38(%rbp)
mov    -0x18(%rbp),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0x138(%rbp)
ff
movsd  -0x138(%rbp),%xmm0
ff
mulsd  -0x138(%rbp),%xmm0
ff
movsd  %xmm0,-0x208(%rbp)
ff
mov    -0x18(%rbp),%rax
movsd  0x8(%rax),%xmm0
movsd  %xmm0,-0x288(%rbp)
ff
movsd  -0x288(%rbp),%xmm0
ff
mulsd  -0x288(%rbp),%xmm0
ff
movsd  %xmm0,-0x2a0(%rbp)
ff
mov    -0x18(%rbp),%rax
movsd  0x10(%rax),%xmm0
movsd  %xmm0,-0x2c8(%rbp)
ff
movsd  -0x2c8(%rbp),%xmm0
ff
mulsd  -0x2c8(%rbp),%xmm0
ff
movsd  %xmm0,-0x2e0(%rbp)
ff
movsd  0x2e3a(%rip),%xmm0
subsd  -0x208(%rbp),%xmm0
ff
subsd  -0x2a0(%rbp),%xmm0
ff
subsd  -0x2e0(%rbp),%xmm0
ff
call   1030 <sqrt@plt>
movsd  %xmm0,-0x320(%rbp)
ff
movsd  0x2e0d(%rip),%xmm0
divsd  -0x320(%rbp),%xmm0
ff
movsd  %xmm0,-0x40(%rbp)
mov    -0x10(%rbp),%rax
movsd  0x8(%rax),%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  -0x58(%rbp),%xmm0
mulsd  -0x40(%rbp),%xmm0
movsd  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0x80(%rbp)
movsd  -0x68(%rbp),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x138(%rbp),%xmm2
ff
movsd  -0x80(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xa8(%rbp)
ff
mov    -0x28(%rbp),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0xc8(%rbp)
ff
mov    -0x10(%rbp),%rax
movsd  0x10(%rax),%xmm0
movsd  %xmm0,-0x100(%rbp)
ff
movsd  -0x100(%rbp),%xmm0
ff
mulsd  -0x40(%rbp),%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
mov    -0x10(%rbp),%rax
movsd  0x18(%rax),%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x138(%rbp),%xmm2
ff
movsd  -0x148(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
mov    -0x28(%rbp),%rax
movsd  0x8(%rax),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
movsd  -0x40(%rbp),%xmm0
mulsd  -0x148(%rbp),%xmm0
ff
movsd  %xmm0,-0x1a0(%rbp)
ff
movsd  -0x1a0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x138(%rbp),%xmm2
ff
movsd  -0x100(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1c8(%rbp)
ff
mov    -0x28(%rbp),%rax
movsd  0x10(%rax),%xmm0
movsd  %xmm0,-0x1d8(%rbp)
ff
movsd  -0xa8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  -0xc8(%rbp),%xmm2
ff
movsd  -0x158(%rbp),%xmm0
ff
mulsd  -0x168(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x1c8(%rbp),%xmm0
ff
movsd  -0x1d8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x210(%rbp)
ff
movsd  -0x320(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x58(%rbp),%xmm2
movsd  -0x138(%rbp),%xmm1
ff
mulsd  -0x80(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x288(%rbp),%xmm1
ff
movsd  -0x148(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2c8(%rbp),%xmm0
ff
movsd  -0x100(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x270(%rbp)
ff
movsd  -0x270(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x280(%rbp)
ff
movsd  -0x320(%rbp),%xmm0
ff
movsd  -0x100(%rbp),%xmm2
ff
movsd  -0x288(%rbp),%xmm1
ff
mulsd  -0x80(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x2c8(%rbp),%xmm1
ff
movsd  -0x58(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x138(%rbp),%xmm0
ff
movsd  -0x148(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x290(%rbp)
ff
movsd  -0x320(%rbp),%xmm0
ff
movsd  -0x148(%rbp),%xmm2
ff
movsd  -0x2c8(%rbp),%xmm1
ff
mulsd  -0x80(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x138(%rbp),%xmm1
ff
movsd  -0x100(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x58(%rbp),%xmm0
movsd  -0x288(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x298(%rbp)
ff
movsd  -0x280(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  -0xc8(%rbp),%xmm2
ff
movsd  -0x290(%rbp),%xmm0
ff
mulsd  -0x168(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x298(%rbp),%xmm0
ff
movsd  -0x1d8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2a8(%rbp)
ff
movsd  -0xa8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x2b0(%rbp)
ff
movsd  -0x40(%rbp),%xmm0
mulsd  -0x80(%rbp),%xmm0
movsd  %xmm0,-0x2b8(%rbp)
ff
movsd  -0x2b8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x138(%rbp),%xmm2
ff
movsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2c0(%rbp)
ff
movsd  -0x320(%rbp),%xmm0
ff
movsd  -0x80(%rbp),%xmm2
movsd  -0x138(%rbp),%xmm1
ff
mulsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x288(%rbp),%xmm1
ff
movsd  -0x100(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2c8(%rbp),%xmm0
ff
movsd  -0x148(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2d0(%rbp)
ff
movsd  -0x2d0(%rbp),%xmm1
ff
movsd  -0xc8(%rbp),%xmm2
ff
movsd  -0x290(%rbp),%xmm0
ff
mulsd  -0x1d8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x168(%rbp),%xmm0
ff
movsd  -0x298(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2d8(%rbp)
ff
movsd  -0x2c0(%rbp),%xmm1
ff
movsd  -0xc8(%rbp),%xmm2
ff
movsd  -0x158(%rbp),%xmm0
ff
mulsd  -0x1d8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x168(%rbp),%xmm0
ff
movsd  -0x1c8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2e8(%rbp)
ff
movsd  -0x2c0(%rbp),%xmm1
ff
movsd  -0x168(%rbp),%xmm2
ff
movsd  -0x1c8(%rbp),%xmm0
ff
mulsd  -0xc8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x1d8(%rbp),%xmm0
ff
movsd  -0xa8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2f0(%rbp)
ff
movsd  -0x298(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x2f8(%rbp)
ff
movsd  -0x2d0(%rbp),%xmm1
ff
movsd  -0x168(%rbp),%xmm2
ff
movsd  -0x298(%rbp),%xmm0
ff
mulsd  -0xc8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x280(%rbp),%xmm0
ff
movsd  -0x1d8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x300(%rbp)
ff
movsd  -0x1c8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x308(%rbp)
ff
movsd  -0x2c0(%rbp),%xmm1
ff
movsd  -0x1d8(%rbp),%xmm2
ff
movsd  -0x168(%rbp),%xmm0
ff
mulsd  -0xa8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x158(%rbp),%xmm0
ff
movsd  -0xc8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x310(%rbp)
ff
movsd  -0x290(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x318(%rbp)
ff
movsd  -0x2d0(%rbp),%xmm1
ff
movsd  -0x1d8(%rbp),%xmm2
ff
movsd  -0x280(%rbp),%xmm0
ff
mulsd  -0x168(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x290(%rbp),%xmm0
ff
movsd  -0xc8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x328(%rbp)
ff
movsd  -0x158(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x330(%rbp)
ff
mov    -0x8(%rbp),%rax
movsd  0x20(%rax),%xmm0
movsd  %xmm0,-0x338(%rbp)
ff
movsd  -0x210(%rbp),%xmm0
ff
movsd  -0x318(%rbp),%xmm2
ff
movsd  -0x330(%rbp),%xmm1
ff
mulsd  -0x2a8(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x2c0(%rbp),%xmm1
ff
movsd  -0x300(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2d0(%rbp),%xmm0
ff
movsd  -0x2f0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x310(%rbp),%xmm1
ff
movsd  -0x270(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x328(%rbp),%xmm0
ff
movsd  -0x2b0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x2e8(%rbp),%xmm1
ff
movsd  -0x2f8(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x308(%rbp),%xmm0
ff
movsd  -0x2d8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x48(%rbp)
mov    -0x8(%rbp),%rax
movsd  0x8(%rax),%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  -0x210(%rbp),%xmm0
ff
movsd  -0x2f8(%rbp),%xmm2
ff
movsd  -0x308(%rbp),%xmm1
ff
mulsd  -0x2a8(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x2c0(%rbp),%xmm1
ff
movsd  -0x328(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2d0(%rbp),%xmm0
ff
movsd  -0x310(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x2e8(%rbp),%xmm1
ff
movsd  -0x318(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2d8(%rbp),%xmm0
ff
movsd  -0x330(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x270(%rbp),%xmm1
ff
movsd  -0x2f0(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x300(%rbp),%xmm0
ff
movsd  -0x2b0(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  -0x2f8(%rbp),%xmm0
ff
movsd  -0x2a8(%rbp),%xmm2
ff
movsd  -0x2d0(%rbp),%xmm1
ff
mulsd  -0x328(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x2d8(%rbp),%xmm1
ff
movsd  -0x318(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x300(%rbp),%xmm0
ff
movsd  -0x270(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x20(%rbp),%rax
addsd  0x10(%rax),%xmm0
movsd  %xmm0,-0x70(%rbp)
movsd  0x234d(%rip),%xmm0
divsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x78(%rbp)
movsd  -0x2a8(%rbp),%xmm0
ff
movsd  -0x318(%rbp),%xmm2
ff
movsd  -0x2d0(%rbp),%xmm1
ff
mulsd  -0x300(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x328(%rbp),%xmm1
ff
movsd  -0x270(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2d8(%rbp),%xmm0
ff
movsd  -0x2f8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x20(%rbp),%rax
addsd  0x8(%rax),%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
movsd  -0x70(%rbp),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x90(%rbp)
ff
movsd  0x22a9(%rip),%xmm0
divsd  -0x90(%rbp),%xmm0
ff
movsd  %xmm0,-0x98(%rbp)
ff
movsd  -0x38(%rbp),%xmm1
movsd  -0x270(%rbp),%xmm2
ff
movsd  -0x2a8(%rbp),%xmm3
ff
movsd  -0x2d0(%rbp),%xmm0
ff
mulsd  -0x2d8(%rbp),%xmm0
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x300(%rbp),%xmm0
ff
movsd  -0x2f8(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x328(%rbp),%xmm2
ff
movsd  -0x318(%rbp),%xmm3
ff
movq   %xmm2,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm2
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
mov    -0x20(%rbp),%rax
addsd  (%rax),%xmm2
movsd  -0x338(%rbp),%xmm0
ff
mulsd  -0x88(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x70(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mulsd  -0x98(%rbp),%xmm0
ff
movsd  %xmm0,-0xa0(%rbp)
ff
movsd  -0x38(%rbp),%xmm1
movsd  -0x210(%rbp),%xmm2
ff
movsd  -0x270(%rbp),%xmm3
ff
movsd  -0x2b0(%rbp),%xmm0
ff
mulsd  -0x2a8(%rbp),%xmm0
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x2c0(%rbp),%xmm0
ff
movsd  -0x2d8(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x2d0(%rbp),%xmm2
ff
movsd  -0x2e8(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x2f8(%rbp),%xmm0
ff
movsd  -0x2f0(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x300(%rbp),%xmm2
ff
movsd  -0x308(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x318(%rbp),%xmm0
ff
movsd  -0x310(%rbp),%xmm3
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x328(%rbp),%xmm2
ff
movsd  -0x330(%rbp),%xmm3
ff
movq   %xmm2,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm2
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x338(%rbp),%xmm0
ff
mulsd  -0x48(%rbp),%xmm0
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x50(%rbp),%xmm0
movsd  -0x60(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x78(%rbp),%xmm2
movsd  -0x60(%rbp),%xmm1
mulsd  -0xa0(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,(%rax)
movsd  -0x38(%rbp),%xmm0
mov    -0x8(%rbp),%rax
mulsd  0x18(%rax),%xmm0
movsd  %xmm0,-0xb0(%rbp)
ff
mov    -0x8(%rbp),%rax
movsd  0x10(%rax),%xmm0
movsd  %xmm0,-0xb8(%rbp)
ff
movsd  -0xb0(%rbp),%xmm0
ff
movsd  -0x88(%rbp),%xmm2
ff
movsd  -0x70(%rbp),%xmm1
mulsd  -0xb8(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mulsd  -0x98(%rbp),%xmm0
ff
movsd  %xmm0,-0xc0(%rbp)
ff
movsd  -0x48(%rbp),%xmm0
movsd  -0xb0(%rbp),%xmm2
ff
movsd  -0xb8(%rbp),%xmm1
ff
mulsd  -0x60(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x78(%rbp),%xmm2
movsd  -0xc0(%rbp),%xmm1
ff
mulsd  -0x60(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x30(%rax)
movsd  -0x68(%rbp),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x288(%rbp),%xmm2
ff
movsd  -0x148(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xd0(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x288(%rbp),%xmm2
ff
movsd  -0x80(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xd8(%rbp)
ff
movsd  -0x1a0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x288(%rbp),%xmm2
ff
movsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xe0(%rbp)
ff
movsd  -0xd0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  -0xc8(%rbp),%xmm2
ff
movsd  -0xd8(%rbp),%xmm0
ff
mulsd  -0x168(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0xe0(%rbp),%xmm0
ff
movsd  -0x1d8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xe8(%rbp)
ff
movsd  -0xd0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0xf0(%rbp)
ff
movsd  -0x2b8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x288(%rbp),%xmm2
ff
movsd  -0x100(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xf8(%rbp)
ff
movsd  -0xf8(%rbp),%xmm1
ff
movsd  -0xc8(%rbp),%xmm2
ff
movsd  -0xd8(%rbp),%xmm0
ff
mulsd  -0x1d8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0xe0(%rbp),%xmm0
ff
movsd  -0x168(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x108(%rbp)
ff
movsd  -0xf8(%rbp),%xmm1
ff
movsd  -0x168(%rbp),%xmm2
ff
movsd  -0xe0(%rbp),%xmm0
ff
mulsd  -0xc8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0xd0(%rbp),%xmm0
ff
movsd  -0x1d8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x110(%rbp)
ff
movsd  -0xe0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x118(%rbp)
ff
movsd  -0xf8(%rbp),%xmm1
ff
movsd  -0x1d8(%rbp),%xmm2
ff
movsd  -0xd0(%rbp),%xmm0
ff
mulsd  -0x168(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0xd8(%rbp),%xmm0
ff
movsd  -0xc8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x128(%rbp)
ff
movsd  -0xd8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x130(%rbp)
ff
movsd  -0xe8(%rbp),%xmm0
ff
movsd  -0x318(%rbp),%xmm2
ff
movsd  -0x2a8(%rbp),%xmm1
ff
mulsd  -0x130(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0xf8(%rbp),%xmm1
ff
movsd  -0x300(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2d0(%rbp),%xmm0
ff
movsd  -0x110(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x128(%rbp),%xmm1
ff
movsd  -0x270(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x328(%rbp),%xmm0
ff
movsd  -0xf0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x2f8(%rbp),%xmm1
ff
movsd  -0x108(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2d8(%rbp),%xmm0
ff
movsd  -0x118(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x140(%rbp)
ff
movsd  -0xe8(%rbp),%xmm0
ff
movsd  -0x2f8(%rbp),%xmm2
ff
movsd  -0x2a8(%rbp),%xmm1
ff
mulsd  -0x118(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x328(%rbp),%xmm1
ff
movsd  -0xf8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2d0(%rbp),%xmm0
ff
movsd  -0x128(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x108(%rbp),%xmm1
ff
movsd  -0x318(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2d8(%rbp),%xmm0
ff
movsd  -0x130(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x110(%rbp),%xmm1
ff
movsd  -0x270(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x300(%rbp),%xmm0
ff
movsd  -0xf0(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x150(%rbp)
ff
movsd  -0x38(%rbp),%xmm1
movsd  -0xe8(%rbp),%xmm2
ff
movsd  -0x270(%rbp),%xmm3
ff
movsd  -0xf0(%rbp),%xmm0
ff
mulsd  -0x2a8(%rbp),%xmm0
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0xf8(%rbp),%xmm0
ff
movsd  -0x2d8(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x108(%rbp),%xmm2
ff
movsd  -0x2d0(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x110(%rbp),%xmm0
ff
movsd  -0x2f8(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x300(%rbp),%xmm2
ff
movsd  -0x118(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x128(%rbp),%xmm0
ff
movsd  -0x318(%rbp),%xmm3
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x328(%rbp),%xmm2
ff
movsd  -0x130(%rbp),%xmm3
ff
movq   %xmm2,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm2
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x338(%rbp),%xmm0
ff
mulsd  -0x140(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x50(%rbp),%xmm0
movsd  -0x150(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x78(%rbp),%xmm2
movsd  -0xa0(%rbp),%xmm1
ff
mulsd  -0x150(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x8(%rax)
movsd  -0xb0(%rbp),%xmm0
ff
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0xb8(%rbp),%xmm1
ff
mulsd  -0x150(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x78(%rbp),%xmm2
movsd  -0xc0(%rbp),%xmm1
ff
mulsd  -0x150(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x38(%rax)
movsd  -0x68(%rbp),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x2c8(%rbp),%xmm2
ff
movsd  -0x100(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x160(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x2c8(%rbp),%xmm2
ff
movsd  -0x58(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x170(%rbp)
ff
movsd  -0x1a0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x2c8(%rbp),%xmm2
ff
movsd  -0x80(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x178(%rbp)
ff
movsd  -0x160(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  -0xc8(%rbp),%xmm2
ff
movsd  -0x168(%rbp),%xmm0
ff
mulsd  -0x170(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x178(%rbp),%xmm0
ff
movsd  -0x1d8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x180(%rbp)
ff
movsd  -0x160(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x188(%rbp)
ff
movsd  -0x2b8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x2c8(%rbp),%xmm2
ff
movsd  -0x148(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x190(%rbp)
ff
movsd  -0x190(%rbp),%xmm1
ff
movsd  -0xc8(%rbp),%xmm2
ff
movsd  -0x170(%rbp),%xmm0
ff
mulsd  -0x1d8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x178(%rbp),%xmm0
ff
movsd  -0x168(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x198(%rbp)
ff
movsd  -0x168(%rbp),%xmm1
ff
movsd  -0x190(%rbp),%xmm2
ff
movsd  -0x178(%rbp),%xmm0
ff
mulsd  -0xc8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x160(%rbp),%xmm0
ff
movsd  -0x1d8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1a8(%rbp)
ff
movsd  -0x178(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x1b0(%rbp)
ff
movsd  -0x190(%rbp),%xmm1
ff
movsd  -0x1d8(%rbp),%xmm2
ff
movsd  -0x160(%rbp),%xmm0
ff
mulsd  -0x168(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x170(%rbp),%xmm0
ff
movsd  -0xc8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1b8(%rbp)
ff
movsd  -0x170(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x1c0(%rbp)
ff
movsd  -0x180(%rbp),%xmm0
ff
movsd  -0x318(%rbp),%xmm2
ff
movsd  -0x2a8(%rbp),%xmm1
ff
mulsd  -0x1c0(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x300(%rbp),%xmm1
ff
movsd  -0x190(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2d0(%rbp),%xmm0
ff
movsd  -0x1a8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x1b8(%rbp),%xmm1
ff
movsd  -0x270(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x328(%rbp),%xmm0
ff
movsd  -0x188(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x198(%rbp),%xmm1
ff
movsd  -0x2f8(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2d8(%rbp),%xmm0
ff
movsd  -0x1b0(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1d0(%rbp)
ff
movsd  -0x180(%rbp),%xmm0
ff
movsd  -0x2f8(%rbp),%xmm2
ff
movsd  -0x2a8(%rbp),%xmm1
ff
mulsd  -0x1b0(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x190(%rbp),%xmm1
ff
movsd  -0x328(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2d0(%rbp),%xmm0
ff
movsd  -0x1b8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x198(%rbp),%xmm1
ff
movsd  -0x318(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x1c0(%rbp),%xmm0
ff
movsd  -0x2d8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x1a8(%rbp),%xmm1
ff
movsd  -0x270(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x300(%rbp),%xmm0
ff
movsd  -0x188(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1e0(%rbp)
ff
movsd  -0x38(%rbp),%xmm1
movsd  -0x180(%rbp),%xmm2
ff
movsd  -0x270(%rbp),%xmm3
ff
movsd  -0x188(%rbp),%xmm0
ff
mulsd  -0x2a8(%rbp),%xmm0
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x190(%rbp),%xmm0
ff
movsd  -0x2d8(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x2d0(%rbp),%xmm2
ff
movsd  -0x198(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x1a8(%rbp),%xmm0
ff
movsd  -0x2f8(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x300(%rbp),%xmm2
ff
movsd  -0x1b0(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x1b8(%rbp),%xmm0
ff
movsd  -0x318(%rbp),%xmm3
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x328(%rbp),%xmm2
ff
movsd  -0x1c0(%rbp),%xmm3
ff
movq   %xmm2,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm2
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x1d0(%rbp),%xmm0
ff
mulsd  -0x338(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x1e0(%rbp),%xmm0
ff
movsd  -0x50(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x78(%rbp),%xmm2
movsd  -0xa0(%rbp),%xmm1
ff
mulsd  -0x1e0(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x10(%rax)
movsd  -0xb0(%rbp),%xmm0
ff
movsd  -0x1d0(%rbp),%xmm2
ff
movsd  -0x1e0(%rbp),%xmm1
ff
mulsd  -0xb8(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x78(%rbp),%xmm2
movsd  -0xc0(%rbp),%xmm1
ff
mulsd  -0x1e0(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x40(%rax)
movsd  -0x78(%rbp),%xmm0
mulsd  -0x38(%rbp),%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x18(%rax)
mov    -0x30(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,0x48(%rax)
movsd  -0x338(%rbp),%xmm0
ff
mulsd  -0x78(%rbp),%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x20(%rax)
movsd  -0xb0(%rbp),%xmm0
ff
mulsd  -0x78(%rbp),%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x50(%rax)
movsd  -0x50(%rbp),%xmm0
movsd  -0x78(%rbp),%xmm2
movsd  -0xa0(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x28(%rax)
movsd  -0xb8(%rbp),%xmm0
ff
movsd  -0x78(%rbp),%xmm2
movsd  -0xc0(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,0x58(%rax)
movsd  -0x270(%rbp),%xmm0
ff
mulsd  -0x270(%rbp),%xmm0
ff
movsd  %xmm0,-0x1e8(%rbp)
ff
movsd  -0x2d0(%rbp),%xmm0
ff
mulsd  -0x2d0(%rbp),%xmm0
ff
movsd  %xmm0,-0x1f0(%rbp)
ff
movsd  -0x318(%rbp),%xmm0
ff
mulsd  -0x318(%rbp),%xmm0
ff
movsd  %xmm0,-0x1f8(%rbp)
ff
movsd  -0x270(%rbp),%xmm0
ff
mulsd  -0x318(%rbp),%xmm0
ff
movsd  %xmm0,-0x200(%rbp)
ff
movsd  -0x2d0(%rbp),%xmm0
ff
mulsd  -0x2f8(%rbp),%xmm0
ff
movsd  %xmm0,-0x218(%rbp)
ff
movsd  -0x200(%rbp),%xmm0
ff
movsd  -0x2d0(%rbp),%xmm1
ff
mulsd  -0x298(%rbp),%xmm1
ff
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x218(%rbp),%xmm0
ff
movsd  %xmm0,-0x220(%rbp)
ff
movsd  -0x270(%rbp),%xmm0
ff
mulsd  -0x2f8(%rbp),%xmm0
ff
movsd  %xmm0,-0x228(%rbp)
ff
movsd  -0x2d0(%rbp),%xmm0
ff
mulsd  -0x318(%rbp),%xmm0
ff
movsd  %xmm0,-0x230(%rbp)
ff
movsd  -0x228(%rbp),%xmm0
ff
movsd  -0x230(%rbp),%xmm1
ff
addsd  %xmm1,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x298(%rbp),%xmm0
ff
movsd  -0x270(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x238(%rbp)
ff
movsd  -0x38(%rbp),%xmm1
movsd  -0x1e8(%rbp),%xmm0
ff
addsd  -0x1f0(%rbp),%xmm0
ff
movsd  -0x298(%rbp),%xmm2
ff
movsd  -0x2f8(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
subsd  -0x1f8(%rbp),%xmm2
ff
movsd  -0x338(%rbp),%xmm0
ff
mulsd  -0x220(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x50(%rbp),%xmm0
movsd  -0x238(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x78(%rbp),%xmm2
movsd  -0xa0(%rbp),%xmm1
ff
mulsd  -0x238(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    0x10(%rbp),%rax
movsd  %xmm0,(%rax)
movsd  -0xb0(%rbp),%xmm0
ff
movsd  -0x220(%rbp),%xmm2
ff
movsd  -0xb8(%rbp),%xmm1
ff
mulsd  -0x238(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x78(%rbp),%xmm2
movsd  -0xc0(%rbp),%xmm1
ff
mulsd  -0x238(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    0x10(%rbp),%rax
movsd  %xmm0,0x18(%rax)
movsd  -0x2f8(%rbp),%xmm0
ff
mulsd  -0x2f8(%rbp),%xmm0
ff
movsd  %xmm0,-0x240(%rbp)
ff
movsd  -0x1f8(%rbp),%xmm1
ff
addsd  -0x1f0(%rbp),%xmm1
ff
movsd  -0x270(%rbp),%xmm0
ff
movsd  -0x280(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x240(%rbp),%xmm0
ff
movsd  %xmm0,-0x248(%rbp)
ff
movsd  -0x2f8(%rbp),%xmm0
ff
mulsd  -0x318(%rbp),%xmm0
ff
movsd  %xmm0,-0x250(%rbp)
ff
movsd  -0x2d0(%rbp),%xmm0
ff
mulsd  -0x270(%rbp),%xmm0
ff
movsd  %xmm0,-0x258(%rbp)
ff
movsd  -0x250(%rbp),%xmm0
ff
movsd  -0x2d0(%rbp),%xmm1
ff
mulsd  -0x280(%rbp),%xmm1
ff
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x258(%rbp),%xmm0
ff
movsd  %xmm0,-0x260(%rbp)
ff
movsd  -0x38(%rbp),%xmm1
movsd  -0x200(%rbp),%xmm2
ff
movsd  -0x218(%rbp),%xmm0
ff
addsd  %xmm0,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x280(%rbp),%xmm2
ff
movsd  -0x318(%rbp),%xmm3
ff
movq   %xmm2,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm2
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x338(%rbp),%xmm0
ff
mulsd  -0x248(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x50(%rbp),%xmm0
movsd  -0x260(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x78(%rbp),%xmm2
movsd  -0xa0(%rbp),%xmm1
ff
mulsd  -0x260(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    0x10(%rbp),%rax
movsd  %xmm0,0x8(%rax)
movsd  -0xb0(%rbp),%xmm0
ff
movsd  -0x248(%rbp),%xmm2
ff
movsd  -0xb8(%rbp),%xmm1
ff
mulsd  -0x260(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x78(%rbp),%xmm2
movsd  -0xc0(%rbp),%xmm1
ff
mulsd  -0x260(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    0x10(%rbp),%rax
movsd  %xmm0,0x20(%rax)
movsd  -0x250(%rbp),%xmm0
ff
movsd  -0x258(%rbp),%xmm1
ff
addsd  %xmm1,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x290(%rbp),%xmm0
ff
movsd  -0x2f8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x268(%rbp)
ff
movsd  -0x240(%rbp),%xmm1
ff
addsd  -0x1f0(%rbp),%xmm1
ff
movsd  -0x290(%rbp),%xmm0
ff
movsd  -0x318(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x1e8(%rbp),%xmm0
ff
movsd  %xmm0,-0x278(%rbp)
ff
movsd  -0x38(%rbp),%xmm1
movsd  -0x228(%rbp),%xmm2
ff
movsd  -0x2d0(%rbp),%xmm0
ff
mulsd  -0x290(%rbp),%xmm0
ff
addsd  %xmm2,%xmm2
addsd  %xmm0,%xmm2
subsd  -0x230(%rbp),%xmm2
ff
movsd  -0x338(%rbp),%xmm0
ff
mulsd  -0x268(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x278(%rbp),%xmm0
ff
movsd  -0x50(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x78(%rbp),%xmm2
movsd  -0xa0(%rbp),%xmm1
ff
mulsd  -0x278(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    0x10(%rbp),%rax
movsd  %xmm0,0x10(%rax)
movsd  -0xb0(%rbp),%xmm0
ff
movsd  -0x268(%rbp),%xmm2
ff
movsd  -0xb8(%rbp),%xmm1
ff
mulsd  -0x278(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x78(%rbp),%xmm2
movsd  -0xc0(%rbp),%xmm1
ff
mulsd  -0x278(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    0x10(%rbp),%rax
movsd  %xmm0,0x28(%rax)
add    $0x340,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<calcImgProjJacRTS>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x298,%rsp
mov    %r9,%r14
mov    %r8,%r13
mov    %rcx,%r15
mov    %rsi,%rbx
mov    %rdi,%r12
mov    0x2d0(%rsp),%rbp
movsd  (%rdi),%xmm0
movaps %xmm0,0x130(%rsp)
movsd  (%rdx),%xmm1
movapd %xmm1,0x30(%rsp)
mulsd  %xmm1,%xmm1
movupd 0x8(%rdx),%xmm0
movapd %xmm0,%xmm2
mulsd  %xmm0,%xmm2
movapd %xmm0,0x100(%rsp)
movapd %xmm0,%xmm3
unpckhpd %xmm0,%xmm3
movapd %xmm3,0x40(%rsp)
mulsd  %xmm3,%xmm3
movsd  0x1e7e(%rip),%xmm0
subsd  %xmm1,%xmm0
subsd  %xmm2,%xmm0
subsd  %xmm3,%xmm0
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jb     11a1 <calcImgProjJacRTS+0x91>
xorps  %xmm1,%xmm1
sqrtsd %xmm0,%xmm1
jmp    11aa <calcImgProjJacRTS+0x9a>
call   1030 <sqrt@plt>
movapd %xmm0,%xmm1
movsd  0x1e4d(%rip),%xmm9
divsd  %xmm1,%xmm9
movupd (%rbx),%xmm3
movupd 0x10(%rbx),%xmm15
movapd %xmm3,%xmm11
unpckhpd %xmm3,%xmm11
movapd %xmm11,0x20(%rsp)
movapd 0x1e35(%rip),%xmm2
xorpd  %xmm2,%xmm11
movapd %xmm15,%xmm0
xorpd  %xmm2,%xmm0
movapd %xmm1,%xmm7
movapd %xmm2,%xmm6
movapd %xmm0,0x170(%rsp)
movapd %xmm9,%xmm2
mulsd  %xmm0,%xmm2
pshufd $0xee,%xmm0,%xmm0
movapd %xmm2,%xmm1
movapd 0x30(%rsp),%xmm14
mulsd  %xmm14,%xmm1
addsd  %xmm0,%xmm1
movapd %xmm1,0x80(%rsp)
movapd %xmm9,%xmm0
mulsd  %xmm11,%xmm0
movapd %xmm11,0x70(%rsp)
movapd %xmm0,0x160(%rsp)
mulsd  %xmm14,%xmm0
addsd  %xmm3,%xmm0
movapd %xmm0,0x10(%rsp)
movapd %xmm0,%xmm4
xorpd  %xmm6,%xmm4
movsd  0x8(%r13),%xmm0
movapd %xmm0,0xd0(%rsp)
mulsd  %xmm1,%xmm0
movsd  0x0(%r13),%xmm1
movapd %xmm1,0xe0(%rsp)
mulsd  %xmm1,%xmm4
subsd  %xmm0,%xmm4
xorpd  %xmm6,%xmm9
movapd %xmm6,%xmm12
movapd %xmm15,%xmm5
unpckhpd %xmm15,%xmm5
movapd %xmm5,%xmm10
mulsd  %xmm9,%xmm10
movapd %xmm10,%xmm0
mulsd  %xmm14,%xmm0
addsd  %xmm15,%xmm0
movapd %xmm0,0x60(%rsp)
movsd  0x10(%r13),%xmm6
movapd %xmm6,0x120(%rsp)
mulsd  %xmm6,%xmm0
subsd  %xmm0,%xmm4
movapd %xmm4,0x90(%rsp)
movapd %xmm7,%xmm6
xorpd  %xmm12,%xmm6
movapd 0x100(%rsp),%xmm12
movapd %xmm12,%xmm13
mulsd  %xmm5,%xmm13
movapd %xmm12,%xmm0
mulsd  %xmm3,%xmm0
movapd %xmm0,(%rsp)
movapd %xmm14,%xmm4
mulsd  %xmm5,%xmm4
movapd 0x40(%rsp),%xmm0
movapd %xmm0,%xmm8
movapd %xmm0,%xmm1
mulsd  %xmm3,%xmm8
mulsd  %xmm7,%xmm5
mulsd  %xmm3,%xmm9
movapd %xmm9,0x50(%rsp)
unpcklpd %xmm2,%xmm2
mulpd  %xmm12,%xmm2
addpd  %xmm3,%xmm2
movapd %xmm2,0xf0(%rsp)
movapd %xmm11,%xmm2
unpcklpd %xmm3,%xmm2
movapd %xmm7,%xmm11
mulsd  %xmm3,%xmm7
movapd %xmm7,0xc0(%rsp)
mulsd  %xmm14,%xmm3
movapd 0x20(%rsp),%xmm0
mulsd  %xmm0,%xmm6
subsd  %xmm3,%xmm6
subsd  %xmm13,%xmm6
movapd %xmm1,%xmm3
movapd %xmm1,%xmm7
mulsd  %xmm15,%xmm7
addsd  %xmm6,%xmm7
movapd %xmm7,0xb0(%rsp)
mulsd  %xmm15,%xmm11
addsd  (%rsp),%xmm11
mulsd  %xmm0,%xmm3
addsd  %xmm11,%xmm3
subsd  %xmm4,%xmm3
movapd %xmm3,(%rsp)
addsd  %xmm8,%xmm5
movapd 0xd0(%rsp),%xmm11
movapd %xmm11,%xmm0
mulsd  %xmm3,%xmm0
movapd %xmm7,%xmm3
movapd 0xe0(%rsp),%xmm13
mulsd  %xmm13,%xmm3
subsd  %xmm0,%xmm3
movapd %xmm3,%xmm4
unpcklpd %xmm10,%xmm10
mulpd  %xmm12,%xmm10
addpd  %xmm2,%xmm10
movapd %xmm10,0x1e0(%rsp)
movapd 0xf0(%rsp),%xmm1
movapd %xmm1,%xmm0
unpckhpd %xmm1,%xmm0
movapd 0x120(%rsp),%xmm6
mulsd  %xmm6,%xmm0
unpcklpd %xmm0,%xmm5
movapd 0x50(%rsp),%xmm8
movapd %xmm8,%xmm7
unpcklpd %xmm8,%xmm7
mulpd  %xmm12,%xmm7
subpd  %xmm15,%xmm7
movapd %xmm7,%xmm0
movapd %xmm7,0x1d0(%rsp)
movsd  %xmm14,%xmm0
movapd %xmm15,%xmm2
movapd %xmm15,%xmm14
movapd %xmm15,0x140(%rsp)
unpcklpd %xmm13,%xmm2
mulpd  %xmm2,%xmm0
addpd  %xmm5,%xmm0
movapd %xmm10,%xmm3
movapd 0x1b9b(%rip),%xmm9
xorpd  %xmm9,%xmm3
movapd 0x70(%rsp),%xmm15
shufpd $0x2,%xmm3,%xmm15
movapd %xmm12,%xmm10
movapd %xmm12,%xmm5
movapd %xmm11,%xmm12
unpcklpd %xmm11,%xmm5
mulpd  %xmm15,%xmm5
addpd  %xmm0,%xmm5
movapd %xmm5,%xmm0
movapd %xmm5,%xmm15
movapd %xmm6,%xmm5
mulsd  %xmm6,%xmm0
subsd  %xmm0,%xmm4
movapd %xmm4,0x110(%rsp)
movapd 0x30(%rsp),%xmm4
mulsd  %xmm4,%xmm8
movapd 0x20(%rsp),%xmm0
subsd  %xmm0,%xmm8
mulsd  %xmm4,%xmm0
movapd 0xc0(%rsp),%xmm4
subsd  %xmm0,%xmm4
mulsd  %xmm6,%xmm1
unpcklpd %xmm1,%xmm4
movapd %xmm10,%xmm0
xorpd  %xmm9,%xmm0
unpcklpd %xmm7,%xmm0
mulpd  %xmm2,%xmm0
addpd  %xmm4,%xmm0
movapd 0x40(%rsp),%xmm1
xorpd  %xmm9,%xmm1
unpcklpd %xmm3,%xmm1
shufpd $0x1,%xmm11,%xmm14
mulpd  %xmm1,%xmm14
addpd  %xmm0,%xmm14
movapd (%rsp),%xmm9
movapd %xmm9,%xmm0
mulsd  %xmm6,%xmm0
movapd %xmm14,%xmm2
mulsd  %xmm13,%xmm2
addsd  %xmm0,%xmm2
movapd %xmm11,%xmm0
movapd %xmm15,%xmm6
movapd %xmm15,0xa0(%rsp)
mulsd  %xmm15,%xmm0
subsd  %xmm0,%xmm2
movapd %xmm2,0x1f0(%rsp)
movapd 0x80(%rsp),%xmm15
movapd %xmm15,%xmm1
mulsd  %xmm5,%xmm1
movapd %xmm8,%xmm7
mulsd  %xmm13,%xmm7
addsd  %xmm1,%xmm7
movapd %xmm11,%xmm1
movapd 0x60(%rsp),%xmm0
mulsd  %xmm0,%xmm1
subsd  %xmm1,%xmm7
movapd %xmm13,%xmm2
mulsd  %xmm0,%xmm2
movapd %xmm8,%xmm10
movapd %xmm8,%xmm11
mulsd  %xmm12,%xmm10
addsd  %xmm2,%xmm10
movapd %xmm5,%xmm2
movapd 0x10(%rsp),%xmm0
mulsd  %xmm0,%xmm2
subsd  %xmm2,%xmm10
movapd %xmm13,%xmm2
movapd %xmm13,%xmm1
mulsd  %xmm6,%xmm2
movapd %xmm14,%xmm3
mulsd  %xmm12,%xmm3
addsd  %xmm2,%xmm3
movapd 0xb0(%rsp),%xmm13
movapd %xmm13,%xmm8
mulsd  %xmm5,%xmm8
addsd  %xmm3,%xmm8
movapd %xmm8,0x190(%rsp)
movapd %xmm0,%xmm2
mulsd  %xmm12,%xmm2
movapd %xmm11,%xmm3
mulsd  %xmm5,%xmm3
addsd  %xmm2,%xmm3
movapd %xmm15,%xmm2
mulsd  %xmm1,%xmm2
subsd  %xmm2,%xmm3
mulsd  %xmm13,%xmm12
movapd %xmm14,%xmm4
mulsd  %xmm5,%xmm4
subsd  %xmm12,%xmm4
movapd %xmm9,%xmm5
movapd %xmm9,%xmm2
mulsd  %xmm1,%xmm2
subsd  %xmm2,%xmm4
movapd %xmm4,%xmm0
xorpd  0x19b0(%rip),%xmm5
movapd %xmm5,0xc0(%rsp)
movapd 0x110(%rsp),%xmm12
movapd %xmm12,%xmm2
mulsd  %xmm15,%xmm2
movapd %xmm15,%xmm9
movapd 0x90(%rsp),%xmm6
movapd %xmm6,%xmm4
mulsd  %xmm5,%xmm4
subsd  %xmm2,%xmm4
movapd %xmm11,%xmm2
movapd %xmm11,0x50(%rsp)
mulsd  %xmm8,%xmm2
addsd  %xmm4,%xmm2
movapd %xmm14,%xmm4
movapd %xmm14,%xmm8
mulsd  %xmm10,%xmm4
addsd  %xmm2,%xmm4
movapd %xmm3,%xmm2
mulsd  %xmm13,%xmm2
addsd  %xmm4,%xmm2
movapd %xmm0,%xmm4
movapd %xmm0,%xmm15
movapd 0x10(%rsp),%xmm1
mulsd  %xmm1,%xmm4
subsd  %xmm4,%xmm2
movapd %xmm7,%xmm4
movapd 0xa0(%rsp),%xmm5
mulsd  %xmm5,%xmm4
addsd  %xmm2,%xmm4
movapd 0x60(%rsp),%xmm0
movapd %xmm0,%xmm2
movapd 0x1f0(%rsp),%xmm14
mulsd  %xmm14,%xmm2
addsd  %xmm4,%xmm2
movapd %xmm2,0x1a0(%rsp)
xorpd  0x18ea(%rip),%xmm5
movapd %xmm5,0x180(%rsp)
movapd %xmm12,%xmm2
mulsd  %xmm0,%xmm2
movapd %xmm6,%xmm4
mulsd  %xmm5,%xmm4
subsd  %xmm2,%xmm4
mulsd  %xmm15,%xmm11
movapd %xmm15,%xmm0
addsd  %xmm4,%xmm11
movapd %xmm8,%xmm15
movapd %xmm8,%xmm4
mulsd  %xmm3,%xmm4
addsd  %xmm11,%xmm4
movapd %xmm7,%xmm2
movapd (%rsp),%xmm5
mulsd  %xmm5,%xmm2
subsd  %xmm2,%xmm4
movapd %xmm14,%xmm2
mulsd  %xmm9,%xmm2
subsd  %xmm2,%xmm4
movapd %xmm13,%xmm2
mulsd  %xmm10,%xmm2
subsd  %xmm2,%xmm4
movapd 0x190(%rsp),%xmm9
movapd %xmm9,%xmm2
mulsd  %xmm1,%xmm2
addsd  %xmm4,%xmm2
movapd %xmm2,0x40(%rsp)
movapd %xmm8,%xmm2
mulsd  %xmm0,%xmm2
movapd 0xa0(%rsp),%xmm1
movapd %xmm1,%xmm4
mulsd  %xmm12,%xmm4
subsd  %xmm4,%xmm2
movapd %xmm14,%xmm4
mulsd  %xmm5,%xmm4
movapd %xmm5,%xmm6
subsd  %xmm4,%xmm2
movapd %xmm9,%xmm4
mulsd  %xmm13,%xmm4
subsd  %xmm4,%xmm2
movapd %xmm8,%xmm4
movapd %xmm8,0x20(%rsp)
mulsd  %xmm9,%xmm4
movapd %xmm12,%xmm5
mulsd  %xmm6,%xmm5
subsd  %xmm5,%xmm4
movapd %xmm0,%xmm5
movapd %xmm0,%xmm6
movapd %xmm0,0x70(%rsp)
mulsd  %xmm13,%xmm5
addsd  %xmm4,%xmm5
movapd %xmm14,%xmm8
mulsd  %xmm1,%xmm8
addsd  %xmm5,%xmm8
addsd  0x10(%r15),%xmm2
movapd %xmm2,%xmm4
mulsd  %xmm2,%xmm4
movsd  0x17b8(%rip),%xmm0
movapd %xmm0,0x1b0(%rsp)
divsd  %xmm4,%xmm0
movsd  %xmm0,0x150(%rsp)
mulsd  %xmm14,%xmm15
movapd %xmm14,%xmm11
movapd %xmm13,%xmm5
mulsd  %xmm12,%xmm5
addsd  %xmm15,%xmm5
movapd %xmm9,%xmm13
movapd %xmm9,%xmm4
mulsd  %xmm1,%xmm4
movapd %xmm1,%xmm9
subsd  %xmm4,%xmm5
movapd %xmm6,%xmm4
movapd (%rsp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
addsd  0x8(%r15),%xmm8
addsd  (%r15),%xmm4
movsd  0x20(%r12),%xmm5
movapd %xmm5,0x1c0(%rsp)
mulsd  %xmm8,%xmm5
movapd 0x130(%rsp),%xmm14
mulsd  %xmm14,%xmm4
addsd  %xmm5,%xmm4
movsd  0x8(%r12),%xmm15
movapd %xmm2,%xmm5
mulsd  %xmm15,%xmm5
movapd %xmm15,0x30(%rsp)
addsd  %xmm4,%xmm5
movapd 0x10(%rsp),%xmm1
mulsd  %xmm12,%xmm1
movapd 0xb0(%rsp),%xmm4
movapd 0x90(%rsp),%xmm0
mulsd  %xmm4,%xmm0
subsd  %xmm1,%xmm0
movapd 0x50(%rsp),%xmm1
mulsd  %xmm11,%xmm1
addsd  %xmm0,%xmm1
movapd 0x20(%rsp),%xmm12
mulsd  %xmm12,%xmm7
addsd  %xmm1,%xmm7
mulsd  %xmm9,%xmm10
movapd %xmm9,%xmm11
subsd  %xmm10,%xmm7
movapd 0x60(%rsp),%xmm0
mulsd  %xmm13,%xmm0
subsd  %xmm0,%xmm7
movapd %xmm6,%xmm10
mulsd  %xmm6,%xmm3
addsd  %xmm7,%xmm3
movapd 0x80(%rsp),%xmm6
mulsd  0x70(%rsp),%xmm6
addsd  %xmm3,%xmm6
movapd 0x1c0(%rsp),%xmm0
movapd 0x1a0(%rsp),%xmm9
mulsd  %xmm9,%xmm0
mulsd  %xmm14,%xmm6
addsd  %xmm0,%xmm6
movapd %xmm6,%xmm1
movapd 0x40(%rsp),%xmm6
mulsd  %xmm6,%xmm15
addsd  %xmm1,%xmm15
movapd 0x1b0(%rsp),%xmm3
divsd  %xmm2,%xmm3
movapd %xmm3,0x1b0(%rsp)
movapd %xmm5,%xmm1
movsd  0x150(%rsp),%xmm7
mulsd  %xmm7,%xmm1
movapd %xmm1,0x10(%rsp)
mulsd  %xmm6,%xmm1
mulsd  %xmm3,%xmm15
subsd  %xmm1,%xmm15
movsd  %xmm15,(%r14)
movapd %xmm12,%xmm0
unpcklpd %xmm11,%xmm0
movapd 0x180(%rsp),%xmm15
movapd %xmm15,%xmm1
unpcklpd %xmm11,%xmm1
mulpd  %xmm0,%xmm1
movapd %xmm1,0x60(%rsp)
movapd %xmm4,%xmm0
mulsd  %xmm4,%xmm0
movapd %xmm0,%xmm3
movapd %xmm0,0x260(%rsp)
movapd %xmm12,%xmm4
mulsd  %xmm12,%xmm4
movapd %xmm4,0x50(%rsp)
movapd %xmm1,%xmm0
unpckhpd %xmm1,%xmm0
addsd  %xmm4,%xmm0
movapd %xmm10,%xmm1
mulsd  %xmm10,%xmm1
movapd %xmm1,0x90(%rsp)
subsd  %xmm1,%xmm0
movapd %xmm3,%xmm4
movhpd 0x18(%r12),%xmm4
unpcklpd %xmm14,%xmm0
movapd %xmm0,%xmm1
subpd  %xmm4,%xmm1
movapd %xmm1,0x280(%rsp)
mulpd  %xmm0,%xmm4
movsd  0x10(%r12),%xmm0
movapd %xmm0,0x80(%rsp)
mulsd  %xmm0,%xmm2
movapd %xmm4,0x270(%rsp)
unpckhpd %xmm4,%xmm4
movapd %xmm8,%xmm1
mulsd  %xmm4,%xmm1
movapd %xmm4,0x250(%rsp)
addsd  %xmm2,%xmm1
mulsd  %xmm6,%xmm0
movapd %xmm9,%xmm2
mulsd  %xmm4,%xmm2
addsd  %xmm0,%xmm2
movapd %xmm2,0x1a0(%rsp)
movapd 0x153e(%rip),%xmm3
xorpd  %xmm3,%xmm1
mulsd  %xmm7,%xmm1
movapd %xmm1,0x150(%rsp)
movapd 0x140(%rsp),%xmm0
shufpd $0x1,0x170(%rsp),%xmm0
movapd 0x160(%rsp),%xmm4
unpcklpd %xmm4,%xmm4
mulpd  0x100(%rsp),%xmm4
addpd  %xmm0,%xmm4
movapd 0xd0(%rsp),%xmm7
movapd %xmm7,%xmm0
xorpd  %xmm3,%xmm0
movapd %xmm7,%xmm1
unpcklpd %xmm0,%xmm1
movapd 0xf0(%rsp),%xmm2
movapd %xmm2,%xmm14
xorpd  %xmm3,%xmm14
movapd %xmm2,%xmm11
movsd  %xmm14,%xmm11
mulpd  %xmm1,%xmm11
movapd 0xe0(%rsp),%xmm9
unpcklpd %xmm9,%xmm9
movapd %xmm4,%xmm0
mulpd  %xmm9,%xmm0
subpd  %xmm0,%xmm11
movapd 0x120(%rsp),%xmm8
unpcklpd %xmm8,%xmm8
movapd 0x1e0(%rsp),%xmm5
movapd %xmm5,%xmm0
mulpd  %xmm8,%xmm0
subpd  %xmm0,%xmm11
movapd %xmm11,0x160(%rsp)
movapd 0x1d0(%rsp),%xmm13
movapd %xmm13,%xmm0
unpcklpd %xmm7,%xmm0
movapd %xmm13,%xmm12
movsd  %xmm7,%xmm12
mulpd  %xmm0,%xmm12
movapd 0x110(%rsp),%xmm6
unpcklpd %xmm6,%xmm6
movapd %xmm6,%xmm0
mulpd  %xmm2,%xmm0
movapd %xmm0,0x100(%rsp)
movapd %xmm13,%xmm10
movapd 0x70(%rsp),%xmm0
movsd  %xmm0,%xmm10
movapd %xmm13,%xmm3
unpcklpd %xmm0,%xmm3
unpcklpd %xmm0,%xmm0
movapd %xmm0,%xmm1
mulpd  %xmm2,%xmm0
movapd %xmm0,0x70(%rsp)
movapd %xmm2,%xmm0
movapd %xmm9,%xmm2
mulpd  %xmm9,%xmm0
movapd %xmm5,%xmm9
mulpd  %xmm5,%xmm2
movapd %xmm12,%xmm5
addpd  %xmm2,%xmm5
movapd %xmm7,%xmm2
unpcklpd %xmm7,%xmm2
mulpd  %xmm4,%xmm2
movapd %xmm2,%xmm12
movapd 0x190(%rsp),%xmm2
unpcklpd %xmm2,%xmm2
movapd %xmm2,0xf0(%rsp)
mulpd  %xmm4,%xmm2
movapd %xmm2,0xd0(%rsp)
mulpd  %xmm4,%xmm1
movapd %xmm1,0xe0(%rsp)
movapd %xmm6,%xmm2
mulpd  %xmm4,%xmm6
movapd %xmm6,0x110(%rsp)
mulpd  %xmm8,%xmm4
subpd  %xmm4,%xmm5
movapd %xmm5,0x170(%rsp)
movapd %xmm8,%xmm1
mulpd  %xmm13,%xmm1
addpd  %xmm12,%xmm1
subpd  %xmm0,%xmm1
movapd %xmm1,0x120(%rsp)
mulpd  %xmm9,%xmm2
movapd %xmm15,%xmm5
pshufd $0x44,%xmm15,%xmm0
mulpd  %xmm11,%xmm0
subpd  %xmm2,%xmm0
mulpd  %xmm10,%xmm3
addpd  %xmm0,%xmm3
movapd 0x20(%rsp),%xmm6
movapd %xmm6,%xmm11
unpcklpd %xmm6,%xmm11
movapd %xmm11,%xmm15
mulpd  %xmm1,%xmm15
addpd  %xmm3,%xmm15
movapd %xmm6,%xmm3
movapd 0xa0(%rsp),%xmm10
unpckhpd %xmm10,%xmm3
movapd %xmm6,%xmm0
movapd %xmm6,%xmm13
shufpd $0x1,%xmm10,%xmm0
mulpd  %xmm10,%xmm0
movapd %xmm0,0x140(%rsp)
movapd %xmm10,%xmm6
movapd %xmm13,%xmm0
mulpd  %xmm10,%xmm0
movapd %xmm0,0x220(%rsp)
movapd %xmm10,%xmm8
movapd %xmm10,%xmm7
movapd %xmm10,%xmm4
movapd %xmm10,0x240(%rsp)
movapd (%rsp),%xmm1
mulsd  %xmm1,%xmm6
movsd  %xmm13,%xmm7
movapd 0xb0(%rsp),%xmm12
movapd %xmm12,%xmm2
movapd 0xc0(%rsp),%xmm0
mulsd  %xmm0,%xmm2
movapd %xmm2,0x230(%rsp)
mulsd  %xmm12,%xmm5
movapd %xmm5,0x180(%rsp)
pshufd $0x44,%xmm0,%xmm5
mulsd  %xmm13,%xmm0
movapd %xmm0,0xc0(%rsp)
mulsd  %xmm12,%xmm4
movapd %xmm4,0xa0(%rsp)
unpcklpd %xmm12,%xmm2
movapd %xmm2,0x210(%rsp)
movapd %xmm12,0x200(%rsp)
movapd %xmm12,%xmm9
movapd %xmm13,%xmm0
mulsd  %xmm13,%xmm12
movapd %xmm12,%xmm13
movapd %xmm0,%xmm12
movapd %xmm0,0xb0(%rsp)
movapd %xmm0,%xmm2
mulsd  %xmm1,%xmm2
movapd %xmm2,0x20(%rsp)
movapd %xmm1,%xmm2
unpcklpd %xmm1,%xmm2
mulpd  %xmm2,%xmm3
subpd  %xmm3,%xmm15
movapd %xmm14,%xmm1
movapd 0x1f0(%rsp),%xmm4
movsd  %xmm4,%xmm1
unpcklpd %xmm4,%xmm14
mulpd  %xmm1,%xmm14
addpd  %xmm15,%xmm14
unpcklpd %xmm10,%xmm8
unpcklpd %xmm9,%xmm9
movapd 0x170(%rsp),%xmm1
mulpd  %xmm1,%xmm11
mulpd  %xmm1,%xmm8
mulpd  %xmm9,%xmm1
subpd  %xmm1,%xmm14
movapd 0xd0(%rsp),%xmm3
addpd  %xmm14,%xmm3
movapd 0x160(%rsp),%xmm14
mulpd  %xmm14,%xmm5
subpd  0x100(%rsp),%xmm5
movapd 0x1d0(%rsp),%xmm15
movapd %xmm15,%xmm1
movapd 0x190(%rsp),%xmm0
unpcklpd %xmm0,%xmm1
shufpd $0x2,%xmm15,%xmm0
mulpd  %xmm1,%xmm0
addpd  %xmm5,%xmm0
addpd  %xmm0,%xmm11
movapd 0x120(%rsp),%xmm1
mulpd  %xmm1,%xmm2
mulpd  %xmm9,%xmm1
addpd  %xmm11,%xmm1
subpd  0xe0(%rsp),%xmm1
movapd 0x140(%rsp),%xmm0
addpd  %xmm1,%xmm0
unpcklpd %xmm4,%xmm4
mulpd  %xmm4,%xmm15
movapd 0x1e0(%rsp),%xmm1
mulpd  %xmm1,%xmm4
addpd  %xmm0,%xmm4
mulpd  %xmm14,%xmm9
subpd  0x110(%rsp),%xmm9
addpd  %xmm15,%xmm9
shufpd $0x1,%xmm12,%xmm12
mulpd  %xmm12,%xmm7
addpd  %xmm9,%xmm7
subpd  %xmm8,%xmm7
movapd 0xf0(%rsp),%xmm0
mulpd  %xmm1,%xmm0
subpd  %xmm0,%xmm7
addpd  %xmm7,%xmm2
movapd 0x70(%rsp),%xmm1
addpd  %xmm2,%xmm1
movapd 0x1c0(%rsp),%xmm15
unpcklpd %xmm15,%xmm15
movapd %xmm15,%xmm0
mulpd  %xmm4,%xmm0
movapd 0x130(%rsp),%xmm2
unpcklpd %xmm2,%xmm2
movapd %xmm2,(%rsp)
mulpd  %xmm2,%xmm1
addpd  %xmm0,%xmm1
movapd %xmm3,%xmm14
movapd %xmm3,%xmm0
movapd 0x30(%rsp),%xmm5
movsd  %xmm5,%xmm0
movapd %xmm3,%xmm2
unpcklpd %xmm5,%xmm2
mulpd  %xmm0,%xmm2
addpd  %xmm1,%xmm2
movapd 0x1086(%rip),%xmm9
movapd 0x200(%rsp),%xmm5
xorpd  %xmm9,%xmm5
movapd 0x10(%rsp),%xmm1
xorpd  %xmm1,%xmm9
unpcklpd %xmm1,%xmm1
movapd %xmm1,0x10(%rsp)
movapd %xmm3,%xmm0
mulpd  %xmm1,%xmm0
movapd 0x1b0(%rsp),%xmm1
movapd %xmm1,%xmm8
unpcklpd %xmm1,%xmm8
mulpd  %xmm8,%xmm2
subpd  %xmm0,%xmm2
movupd %xmm2,0x8(%r14)
movapd 0x80(%rsp),%xmm12
movapd %xmm12,%xmm11
unpcklpd %xmm12,%xmm11
movapd %xmm11,%xmm0
mulpd  %xmm3,%xmm0
movapd 0x250(%rsp),%xmm7
mulpd  %xmm7,%xmm4
addpd  %xmm0,%xmm4
movapd 0xb0(%rsp),%xmm0
unpcklpd 0x50(%rsp),%xmm0
unpcklpd 0x90(%rsp),%xmm10
addpd  %xmm0,%xmm10
movapd 0x220(%rsp),%xmm0
shufpd $0x2,%xmm10,%xmm0
movapd 0xfe6(%rip),%xmm3
unpcklpd %xmm5,%xmm3
mulpd  0x210(%rsp),%xmm3
addpd  %xmm0,%xmm3
movapd %xmm6,%xmm5
addsd  %xmm6,%xmm5
subsd  %xmm13,%xmm5
subsd  %xmm13,%xmm5
addsd  %xmm13,%xmm13
addsd  %xmm6,%xmm13
addsd  %xmm6,%xmm13
movapd 0x40(%rsp),%xmm0
movapd 0x150(%rsp),%xmm10
mulsd  %xmm10,%xmm0
movapd %xmm0,0x40(%rsp)
subpd  0x60(%rsp),%xmm3
mulpd  %xmm3,%xmm15
movapd 0x30(%rsp),%xmm2
movapd %xmm2,%xmm6
movapd %xmm2,%xmm0
unpcklpd %xmm3,%xmm2
movapd %xmm2,0x30(%rsp)
shufpd $0x1,%xmm13,%xmm3
mulpd  %xmm7,%xmm3
mulsd  %xmm1,%xmm7
mulsd  %xmm12,%xmm1
addsd  %xmm10,%xmm1
movapd %xmm9,%xmm2
unpcklpd %xmm10,%xmm9
unpcklpd %xmm10,%xmm10
mulpd  %xmm10,%xmm14
mulpd  %xmm8,%xmm4
addpd  %xmm14,%xmm4
movupd %xmm4,0x38(%r14)
movq   $0x0,0x48(%r14)
movapd 0x130(%rsp),%xmm4
movapd 0x1c0(%rsp),%xmm14
unpcklpd %xmm14,%xmm4
mulpd  %xmm8,%xmm4
movupd %xmm4,0x18(%r14)
movsd  %xmm7,0x50(%r14)
unpcklpd 0x1a0(%rsp),%xmm6
unpcklpd 0x40(%rsp),%xmm2
mulpd  %xmm8,%xmm6
addpd  %xmm2,%xmm6
movupd %xmm6,0x28(%r14)
movsd  %xmm1,0x58(%r14)
movapd 0xc0(%rsp),%xmm12
movapd %xmm12,%xmm2
addsd  %xmm12,%xmm2
movapd 0x180(%rsp),%xmm6
addsd  %xmm6,%xmm2
subsd  0xa0(%rsp),%xmm2
movapd 0x260(%rsp),%xmm4
addsd  0x50(%rsp),%xmm4
movapd 0x240(%rsp),%xmm7
mulsd  %xmm7,%xmm7
subsd  %xmm7,%xmm4
subsd  0x90(%rsp),%xmm4
movapd 0x60(%rsp),%xmm7
addsd  %xmm7,%xmm7
movapd 0x230(%rsp),%xmm1
addsd  %xmm1,%xmm7
addsd  %xmm1,%xmm7
unpcklpd %xmm7,%xmm4
mulpd  (%rsp),%xmm4
addpd  %xmm15,%xmm4
movapd %xmm4,%xmm7
unpcklpd %xmm0,%xmm0
movapd %xmm2,%xmm4
unpcklpd %xmm5,%xmm4
mulpd  %xmm4,%xmm0
addpd  %xmm7,%xmm0
mulpd  0x10(%rsp),%xmm4
mulpd  %xmm8,%xmm0
subpd  %xmm4,%xmm0
movupd %xmm0,0x0(%rbp)
movapd %xmm6,%xmm0
addsd  %xmm6,%xmm0
addsd  0x20(%rsp),%xmm0
subsd  %xmm12,%xmm0
movapd %xmm14,%xmm4
mulsd  %xmm13,%xmm4
mulsd  0x130(%rsp),%xmm0
addsd  %xmm4,%xmm0
movapd 0x80(%rsp),%xmm4
mulsd  %xmm2,%xmm4
unpcklpd %xmm4,%xmm0
movapd 0x280(%rsp),%xmm6
movapd 0x270(%rsp),%xmm7
movsd  %xmm6,%xmm7
movapd 0x30(%rsp),%xmm4
mulpd  %xmm7,%xmm4
addpd  %xmm0,%xmm4
unpcklpd %xmm6,%xmm5
unpcklpd %xmm2,%xmm6
mulpd  %xmm6,%xmm9
mulpd  %xmm8,%xmm4
addpd  %xmm9,%xmm4
movupd %xmm4,0x10(%rbp)
mulpd  %xmm5,%xmm11
addpd  %xmm11,%xmm3
mulpd  %xmm10,%xmm5
mulpd  %xmm8,%xmm3
addpd  %xmm5,%xmm3
movupd %xmm3,0x20(%rbp)
add    $0x298,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret

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

LLVM IR (-O2):
define void @calcImgProjJacRTS(double* nocapture %0, double* nocapture %1, double* nocapture %2, double* nocapture %3, double* nocapture %4, [6 x double]* nocapture writeonly %5, [3 x double]* nocapture writeonly %6) {
%8 = load double, double* %0
%9 = load double, double* %2
%10 = fmul double %9, %9
%11 = getelementptr inbounds double, double* %2, i64 1
%12 = bitcast double* %11 to <2 x double>*
%13 = load <2 x double>, <2 x double>* %12
%14 = extractelement <2 x double> %13, i64 0
%15 = fmul <2 x double> %13, %13
%16 = extractelement <2 x double> %15, i64 0
%17 = extractelement <2 x double> %13, i64 1
%18 = fmul double %17, %17
%19 = fsub double 1.000000e+00, %10
%20 = fsub double %19, %16
%21 = fsub double %20, %18
%22 = tail call double @sqrt(double %21)
%23 = fdiv double 1.000000e+00, %22
%24 = bitcast double* %1 to <2 x double>*
%25 = load <2 x double>, <2 x double>* %24
%26 = extractelement <2 x double> %25, i64 1
%27 = fneg double %26
%28 = fmul double %23, %27
%29 = extractelement <2 x double> %25, i64 0
%30 = tail call double @llvm.fmuladd.f64(double %28, double %9, double %29)
%31 = load double, double* %4
%32 = getelementptr inbounds double, double* %1, i64 2
%33 = bitcast double* %32 to <2 x double>*
%34 = load <2 x double>, <2 x double>* %33
%35 = fneg <2 x double> %34
%36 = extractelement <2 x double> %35, i64 0
%37 = fmul double %23, %36
%38 = extractelement <2 x double> %35, i64 1
%39 = tail call double @llvm.fmuladd.f64(double %37, double %9, double %38)
%40 = getelementptr inbounds double, double* %4, i64 1
%41 = load double, double* %40
%42 = fneg double %23
%43 = extractelement <2 x double> %34, i64 1
%44 = fmul double %43, %42
%45 = extractelement <2 x double> %34, i64 0
%46 = tail call double @llvm.fmuladd.f64(double %44, double %9, double %45)
%47 = getelementptr inbounds double, double* %4, i64 2
%48 = load double, double* %47
%49 = fneg double %30
%50 = fneg double %39
%51 = fmul double %41, %50
%52 = tail call double @llvm.fmuladd.f64(double %49, double %31, double %51)
%53 = fneg double %46
%54 = tail call double @llvm.fmuladd.f64(double %53, double %48, double %52)
%55 = fneg double %22
%56 = fneg double %9
%57 = fmul double %29, %56
%58 = tail call double @llvm.fmuladd.f64(double %55, double %26, double %57)
%59 = fneg double %14
%60 = tail call double @llvm.fmuladd.f64(double %59, double %43, double %58)
%61 = tail call double @llvm.fmuladd.f64(double %17, double %45, double %60)
%62 = fneg double %61
%63 = fmul <2 x double> %13, %25
%64 = extractelement <2 x double> %63, i64 0
%65 = tail call double @llvm.fmuladd.f64(double %22, double %45, double %64)
%66 = tail call double @llvm.fmuladd.f64(double %17, double %26, double %65)
%67 = tail call double @llvm.fmuladd.f64(double %56, double %43, double %66)
%68 = fmul double %17, %29
%69 = tail call double @llvm.fmuladd.f64(double %22, double %43, double %68)
%70 = fneg double %67
%71 = fmul double %41, %70
%72 = tail call double @llvm.fmuladd.f64(double %61, double %31, double %71)
%73 = fmul double %29, %42
%74 = insertelement <2 x double> poison, double %37, i64 0
%75 = shufflevector <2 x double> %74, <2 x double> poison, <2 x i32> zeroinitializer
%76 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %75, <2 x double> %13, <2 x double> %25)
%77 = insertelement <2 x double> poison, double %44, i64 0
%78 = shufflevector <2 x double> %77, <2 x double> poison, <2 x i32> zeroinitializer
%79 = insertelement <2 x double> poison, double %27, i64 0
%80 = shufflevector <2 x double> %79, <2 x double> %25, <2 x i32> <i32 0, i32 2>
%81 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %78, <2 x double> %13, <2 x double> %80)
%82 = fneg <2 x double> %81
%83 = insertelement <2 x double> poison, double %73, i64 0
%84 = shufflevector <2 x double> %83, <2 x double> poison, <2 x i32> zeroinitializer
%85 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %84, <2 x double> %13, <2 x double> %35)
%86 = extractelement <2 x double> %76, i64 1
%87 = fmul double %86, %48
%88 = insertelement <2 x double> %85, double %9, i64 0
%89 = insertelement <2 x double> %34, double %31, i64 1
%90 = insertelement <2 x double> poison, double %69, i64 0
%91 = insertelement <2 x double> %90, double %87, i64 1
%92 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %88, <2 x double> %89, <2 x double> %91)
%93 = insertelement <2 x double> %82, double %27, i64 0
%94 = insertelement <2 x double> %13, double %41, i64 1
%95 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %93, <2 x double> %94, <2 x double> %92)
%96 = extractelement <2 x double> %95, i64 0
%97 = fneg double %96
%98 = tail call double @llvm.fmuladd.f64(double %97, double %48, double %72)
%99 = tail call double @llvm.fmuladd.f64(double %73, double %9, double %27)
%100 = fmul double %26, %56
%101 = tail call double @llvm.fmuladd.f64(double %22, double %29, double %100)
%102 = fneg double %17
%103 = fmul double %67, %48
%104 = extractelement <2 x double> %76, i64 0
%105 = fmul double %104, %48
%106 = insertelement <2 x double> poison, double %59, i64 0
%107 = shufflevector <2 x double> %106, <2 x double> %85, <2 x i32> <i32 0, i32 2>
%108 = insertelement <2 x double> poison, double %101, i64 0
%109 = insertelement <2 x double> %108, double %105, i64 1
%110 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %107, <2 x double> %89, <2 x double> %109)
%111 = insertelement <2 x double> poison, double %102, i64 0
%112 = shufflevector <2 x double> %111, <2 x double> %82, <2 x i32> <i32 0, i32 2>
%113 = shufflevector <2 x double> %34, <2 x double> undef, <2 x i32> <i32 1, i32 undef>
%114 = insertelement <2 x double> %113, double %41, i64 1
%115 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %112, <2 x double> %114, <2 x double> %110)
%116 = shufflevector <2 x double> %115, <2 x double> poison, <2 x i32> <i32 1, i32 0>
%117 = extractelement <2 x double> %115, i64 0
%118 = tail call double @llvm.fmuladd.f64(double %117, double %31, double %103)
%119 = fneg double %41
%120 = tail call double @llvm.fmuladd.f64(double %119, double %96, double %118)
%121 = fmul double %39, %48
%122 = tail call double @llvm.fmuladd.f64(double %99, double %31, double %121)
%123 = tail call double @llvm.fmuladd.f64(double %119, double %46, double %122)
%124 = fmul double %31, %46
%125 = tail call double @llvm.fmuladd.f64(double %99, double %41, double %124)
%126 = fneg double %48
%127 = tail call double @llvm.fmuladd.f64(double %126, double %30, double %125)
%128 = fmul double %31, %96
%129 = tail call double @llvm.fmuladd.f64(double %117, double %41, double %128)
%130 = tail call double @llvm.fmuladd.f64(double %61, double %48, double %129)
%131 = fmul double %30, %41
%132 = tail call double @llvm.fmuladd.f64(double %99, double %48, double %131)
%133 = tail call double @llvm.fmuladd.f64(double %50, double %31, double %132)
%134 = fmul double %41, %62
%135 = tail call double @llvm.fmuladd.f64(double %117, double %48, double %134)
%136 = tail call double @llvm.fmuladd.f64(double %70, double %31, double %135)
%137 = getelementptr inbounds double, double* %0, i64 4
%138 = load double, double* %137
%139 = fmul double %98, %50
%140 = tail call double @llvm.fmuladd.f64(double %54, double %70, double %139)
%141 = tail call double @llvm.fmuladd.f64(double %99, double %130, double %140)
%142 = tail call double @llvm.fmuladd.f64(double %117, double %127, double %141)
%143 = tail call double @llvm.fmuladd.f64(double %133, double %61, double %142)
%144 = tail call double @llvm.fmuladd.f64(double %136, double %49, double %143)
%145 = tail call double @llvm.fmuladd.f64(double %123, double %96, double %144)
%146 = tail call double @llvm.fmuladd.f64(double %46, double %120, double %145)
%147 = getelementptr inbounds double, double* %0, i64 1
%148 = load double, double* %147
%149 = fmul double %98, %53
%150 = tail call double @llvm.fmuladd.f64(double %54, double %97, double %149)
%151 = tail call double @llvm.fmuladd.f64(double %99, double %136, double %150)
%152 = tail call double @llvm.fmuladd.f64(double %117, double %133, double %151)
%153 = tail call double @llvm.fmuladd.f64(double %123, double %70, double %152)
%154 = tail call double @llvm.fmuladd.f64(double %120, double %50, double %153)
%155 = tail call double @llvm.fmuladd.f64(double %62, double %127, double %154)
%156 = fneg double %130
%157 = tail call double @llvm.fmuladd.f64(double %130, double %30, double %155)
%158 = fmul double %117, %136
%159 = tail call double @llvm.fmuladd.f64(double %97, double %98, double %158)
%160 = tail call double @llvm.fmuladd.f64(double %120, double %70, double %159)
%161 = tail call double @llvm.fmuladd.f64(double %156, double %61, double %160)
%162 = getelementptr inbounds double, double* %3, i64 2
%163 = load double, double* %162
%164 = fadd double %163, %161
%165 = fdiv double 1.000000e+00, %164
%166 = fmul double %117, %130
%167 = tail call double @llvm.fmuladd.f64(double %98, double %70, double %166)
%168 = tail call double @llvm.fmuladd.f64(double %136, double %61, double %167)
%169 = tail call double @llvm.fmuladd.f64(double %120, double %96, double %168)
%170 = getelementptr inbounds double, double* %3, i64 1
%171 = load double, double* %170
%172 = fadd double %171, %169
%173 = fmul double %164, %164
%174 = fdiv double 1.000000e+00, %173
%175 = fmul double %117, %120
%176 = tail call double @llvm.fmuladd.f64(double %61, double %98, double %175)
%177 = tail call double @llvm.fmuladd.f64(double %130, double %97, double %176)
%178 = tail call double @llvm.fmuladd.f64(double %136, double %67, double %177)
%179 = load double, double* %3
%180 = fadd double %179, %178
%181 = fmul double %138, %172
%182 = tail call double @llvm.fmuladd.f64(double %8, double %180, double %181)
%183 = tail call double @llvm.fmuladd.f64(double %164, double %148, double %182)
%184 = fmul double %174, %183
%185 = fmul double %98, %49
%186 = tail call double @llvm.fmuladd.f64(double %54, double %61, double %185)
%187 = tail call double @llvm.fmuladd.f64(double %99, double %120, double %186)
%188 = tail call double @llvm.fmuladd.f64(double %117, double %123, double %187)
%189 = tail call double @llvm.fmuladd.f64(double %97, double %127, double %188)
%190 = tail call double @llvm.fmuladd.f64(double %130, double %53, double %189)
%191 = tail call double @llvm.fmuladd.f64(double %67, double %133, double %190)
%192 = tail call double @llvm.fmuladd.f64(double %136, double %39, double %191)
%193 = fmul double %138, %146
%194 = tail call double @llvm.fmuladd.f64(double %8, double %192, double %193)
%195 = tail call double @llvm.fmuladd.f64(double %148, double %157, double %194)
%196 = fneg double %157
%197 = fmul double %184, %196
%198 = tail call double @llvm.fmuladd.f64(double %195, double %165, double %197)
%199 = getelementptr inbounds [6 x double], [6 x double]* %5, i64 0, i64 0
store double %198, double* %199
%200 = getelementptr inbounds double, double* %0, i64 3
%201 = load double, double* %200
%202 = getelementptr inbounds double, double* %0, i64 2
%203 = load double, double* %202
%204 = fmul double %164, %203
%205 = fmul double %61, %61
%206 = fmul double %117, %117
%207 = shufflevector <2 x double> %115, <2 x double> %95, <2 x i32> <i32 0, i32 2>
%208 = insertelement <2 x double> poison, double %97, i64 0
%209 = shufflevector <2 x double> %208, <2 x double> %95, <2 x i32> <i32 0, i32 2>
%210 = fmul <2 x double> %207, %209
%211 = extractelement <2 x double> %210, i64 1
%212 = fadd double %206, %211
%213 = tail call double @llvm.fmuladd.f64(double %67, double %70, double %212)
%214 = insertelement <2 x double> poison, double %213, i64 0
%215 = insertelement <2 x double> %214, double %8, i64 1
%216 = insertelement <2 x double> poison, double %205, i64 0
%217 = insertelement <2 x double> %216, double %201, i64 1
%218 = fsub <2 x double> %215, %217
%219 = fmul <2 x double> %215, %217
%220 = shufflevector <2 x double> %218, <2 x double> %219, <2 x i32> <i32 0, i32 3>
%221 = extractelement <2 x double> %219, i64 1
%222 = tail call double @llvm.fmuladd.f64(double %221, double %172, double %204)
%223 = fmul double %203, %157
%224 = tail call double @llvm.fmuladd.f64(double %146, double %221, double %223)
%225 = fneg double %222
%226 = fmul double %174, %225
%227 = fmul double %157, %226
%228 = fneg <2 x double> %76
%229 = insertelement <2 x double> poison, double %28, i64 0
%230 = shufflevector <2 x double> %229, <2 x double> poison, <2 x i32> zeroinitializer
%231 = shufflevector <2 x double> %113, <2 x double> %35, <2 x i32> <i32 0, i32 2>
%232 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %230, <2 x double> %13, <2 x double> %231)
%233 = fneg <2 x double> %232
%234 = fneg double %184
%235 = getelementptr inbounds [6 x double], [6 x double]* %5, i64 0, i64 1
%236 = insertelement <2 x double> poison, double %41, i64 0
%237 = insertelement <2 x double> %236, double %119, i64 1
%238 = shufflevector <2 x double> %228, <2 x double> %76, <2 x i32> <i32 0, i32 3>
%239 = fmul <2 x double> %237, %238
%240 = insertelement <2 x double> poison, double %31, i64 0
%241 = shufflevector <2 x double> %240, <2 x double> poison, <2 x i32> zeroinitializer
%242 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %233, <2 x double> %241, <2 x double> %239)
%243 = insertelement <2 x double> poison, double %48, i64 0
%244 = shufflevector <2 x double> %243, <2 x double> poison, <2 x i32> zeroinitializer
%245 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %82, <2 x double> %244, <2 x double> %242)
%246 = fmul <2 x double> %241, %81
%247 = shufflevector <2 x double> %85, <2 x double> undef, <2 x i32> <i32 0, i32 undef>
%248 = insertelement <2 x double> %247, double %41, i64 1
%249 = insertelement <2 x double> %85, double %41, i64 0
%250 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %248, <2 x double> %249, <2 x double> %246)
%251 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %233, <2 x double> %244, <2 x double> %250)
%252 = shufflevector <2 x double> %236, <2 x double> poison, <2 x i32> zeroinitializer
%253 = fmul <2 x double> %232, %252
%254 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %85, <2 x double> %244, <2 x double> %253)
%255 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %228, <2 x double> %241, <2 x double> %254)
%256 = insertelement <2 x double> poison, double %98, i64 0
%257 = shufflevector <2 x double> %256, <2 x double> poison, <2 x i32> zeroinitializer
%258 = fmul <2 x double> %257, %82
%259 = shufflevector <2 x double> %208, <2 x double> poison, <2 x i32> zeroinitializer
%260 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %245, <2 x double> %259, <2 x double> %258)
%261 = insertelement <2 x double> poison, double %136, i64 0
%262 = insertelement <2 x double> %85, double %136, i64 0
%263 = insertelement <2 x double> %247, double %136, i64 1
%264 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %262, <2 x double> %263, <2 x double> %260)
%265 = shufflevector <2 x double> %115, <2 x double> poison, <2 x i32> zeroinitializer
%266 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %265, <2 x double> %255, <2 x double> %264)
%267 = shufflevector <2 x double> %115, <2 x double> undef, <2 x i32> <i32 1, i32 undef>
%268 = shufflevector <2 x double> %267, <2 x double> %95, <2 x i32> <i32 0, i32 3>
%269 = insertelement <2 x double> poison, double %70, i64 0
%270 = shufflevector <2 x double> %269, <2 x double> poison, <2 x i32> zeroinitializer
%271 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %268, <2 x double> %270, <2 x double> %266)
%272 = insertelement <2 x double> poison, double %120, i64 0
%273 = insertelement <2 x double> %228, double %120, i64 0
%274 = insertelement <2 x double> %228, double %120, i64 1
%275 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %273, <2 x double> %274, <2 x double> %271)
%276 = fneg <2 x double> %251
%277 = insertelement <2 x double> poison, double %61, i64 0
%278 = shufflevector <2 x double> %277, <2 x double> poison, <2 x i32> zeroinitializer
%279 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %276, <2 x double> %278, <2 x double> %275)
%280 = insertelement <2 x double> poison, double %130, i64 0
%281 = shufflevector <2 x double> %280, <2 x double> poison, <2 x i32> zeroinitializer
%282 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %281, <2 x double> %232, <2 x double> %279)
%283 = fmul <2 x double> %257, %228
%284 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %245, <2 x double> %270, <2 x double> %283)
%285 = insertelement <2 x double> %247, double %130, i64 1
%286 = insertelement <2 x double> %85, double %130, i64 0
%287 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %285, <2 x double> %286, <2 x double> %284)
%288 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %265, <2 x double> %251, <2 x double> %287)
%289 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %255, <2 x double> %278, <2 x double> %288)
%290 = shufflevector <2 x double> %261, <2 x double> poison, <2 x i32> zeroinitializer
%291 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %290, <2 x double> %233, <2 x double> %289)
%292 = shufflevector <2 x double> %267, <2 x double> %95, <2 x i32> <i32 0, i32 2>
%293 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %95, <2 x double> %292, <2 x double> %291)
%294 = shufflevector <2 x double> %272, <2 x double> poison, <2 x i32> zeroinitializer
%295 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %294, <2 x double> %81, <2 x double> %293)
%296 = getelementptr inbounds [6 x double], [6 x double]* %5, i64 1, i64 1
%297 = fmul <2 x double> %257, %233
%298 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %245, <2 x double> %278, <2 x double> %297)
%299 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %85, <2 x double> %294, <2 x double> %298)
%300 = shufflevector <2 x double> %115, <2 x double> %95, <2 x i32> <i32 0, i32 3>
%301 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %116, <2 x double> %300, <2 x double> %299)
%302 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %251, <2 x double> %259, <2 x double> %301)
%303 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %281, <2 x double> %82, <2 x double> %302)
%304 = insertelement <2 x double> poison, double %67, i64 0
%305 = shufflevector <2 x double> %304, <2 x double> poison, <2 x i32> zeroinitializer
%306 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %255, <2 x double> %305, <2 x double> %303)
%307 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %290, <2 x double> %76, <2 x double> %306)
%308 = insertelement <2 x double> poison, double %138, i64 0
%309 = shufflevector <2 x double> %308, <2 x double> poison, <2 x i32> zeroinitializer
%310 = fmul <2 x double> %309, %295
%311 = insertelement <2 x double> poison, double %8, i64 0
%312 = shufflevector <2 x double> %311, <2 x double> poison, <2 x i32> zeroinitializer
%313 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %312, <2 x double> %307, <2 x double> %310)
%314 = insertelement <2 x double> poison, double %148, i64 0
%315 = insertelement <2 x double> %282, double %148, i64 0
%316 = insertelement <2 x double> %282, double %148, i64 1
%317 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %315, <2 x double> %316, <2 x double> %313)
%318 = insertelement <2 x double> poison, double %234, i64 0
%319 = shufflevector <2 x double> %318, <2 x double> poison, <2 x i32> zeroinitializer
%320 = fmul <2 x double> %282, %319
%321 = insertelement <2 x double> poison, double %165, i64 0
%322 = shufflevector <2 x double> %321, <2 x double> poison, <2 x i32> zeroinitializer
%323 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %317, <2 x double> %322, <2 x double> %320)
%324 = bitcast double* %235 to <2 x double>*
store <2 x double> %323, <2 x double>* %324
%325 = insertelement <2 x double> poison, double %203, i64 0
%326 = shufflevector <2 x double> %325, <2 x double> poison, <2 x i32> zeroinitializer
%327 = fmul <2 x double> %326, %282
%328 = shufflevector <2 x double> %219, <2 x double> undef, <2 x i32> <i32 1, i32 1>
%329 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %328, <2 x double> %295, <2 x double> %327)
%330 = insertelement <2 x double> poison, double %226, i64 0
%331 = shufflevector <2 x double> %330, <2 x double> poison, <2 x i32> zeroinitializer
%332 = fmul <2 x double> %282, %331
%333 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %329, <2 x double> %322, <2 x double> %332)
%334 = bitcast double* %296 to <2 x double>*
store <2 x double> %333, <2 x double>* %334
%335 = getelementptr inbounds [6 x double], [6 x double]* %5, i64 0, i64 3
%336 = getelementptr inbounds [6 x double], [6 x double]* %5, i64 1, i64 3
store double 0.000000e+00, double* %336
%337 = insertelement <2 x double> %311, double %138, i64 1
%338 = fmul <2 x double> %337, %322
%339 = bitcast double* %335 to <2 x double>*
store <2 x double> %338, <2 x double>* %339
%340 = fmul double %221, %165
%341 = getelementptr inbounds [6 x double], [6 x double]* %5, i64 1, i64 4
store double %340, double* %341
%342 = insertelement <2 x double> %314, double %224, i64 1
%343 = insertelement <2 x double> %318, double %227, i64 1
%344 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %342, <2 x double> %322, <2 x double> %343)
%345 = getelementptr inbounds [6 x double], [6 x double]* %5, i64 0, i64 5
%346 = bitcast double* %345 to <2 x double>*
store <2 x double> %344, <2 x double>* %346
%347 = tail call double @llvm.fmuladd.f64(double %203, double %165, double %226)
%348 = getelementptr inbounds [6 x double], [6 x double]* %5, i64 1, i64 5
store double %347, double* %348
%349 = fmul double %67, %67
%350 = fmul double %61, %70
%351 = fmul double %61, %97
%352 = fmul double %117, %70
%353 = tail call double @llvm.fmuladd.f64(double %352, double 2.000000e+00, double %351)
%354 = tail call double @llvm.fmuladd.f64(double %97, double %61, double %353)
%355 = fadd double %206, %205
%356 = tail call double @llvm.fmuladd.f64(double %96, double %97, double %355)
%357 = fsub double %356, %349
%358 = fmul double %354, %203
%359 = insertelement <2 x double> %115, double %206, i64 1
%360 = insertelement <2 x double> %95, double %349, i64 1
%361 = fmul <2 x double> %359, %360
%362 = fadd <2 x double> %359, %360
%363 = shufflevector <2 x double> %361, <2 x double> %362, <2 x i32> <i32 0, i32 3>
%364 = insertelement <2 x double> poison, double %350, i64 0
%365 = insertelement <2 x double> %364, double %61, i64 1
%366 = insertelement <2 x double> <double 2.000000e+00, double poison>, double %62, i64 1
%367 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %365, <2 x double> %366, <2 x double> %363)
%368 = fsub <2 x double> %367, %210
%369 = fmul double %67, %96
%370 = fmul double %117, %61
%371 = fmul double %117, %62
%372 = tail call double @llvm.fmuladd.f64(double %369, double 2.000000e+00, double %371)
%373 = fsub double %372, %370
%374 = extractelement <2 x double> %210, i64 0
%375 = tail call double @llvm.fmuladd.f64(double %374, double 2.000000e+00, double %350)
%376 = tail call double @llvm.fmuladd.f64(double %61, double %70, double %375)
%377 = fmul <2 x double> %309, %368
%378 = insertelement <2 x double> poison, double %357, i64 0
%379 = insertelement <2 x double> %378, double %376, i64 1
%380 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %312, <2 x double> %379, <2 x double> %377)
%381 = shufflevector <2 x double> %314, <2 x double> poison, <2 x i32> zeroinitializer
%382 = insertelement <2 x double> poison, double %354, i64 0
%383 = insertelement <2 x double> %382, double %373, i64 1
%384 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %381, <2 x double> %383, <2 x double> %380)
%385 = fmul <2 x double> %383, %319
%386 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %384, <2 x double> %322, <2 x double> %385)
%387 = bitcast [3 x double]* %6 to <2 x double>*
store <2 x double> %386, <2 x double>* %387
%388 = extractelement <2 x double> %368, i64 1
%389 = getelementptr inbounds [3 x double], [3 x double]* %6, i64 1, i64 1
%390 = tail call double @llvm.fmuladd.f64(double %370, double 2.000000e+00, double %369)
%391 = tail call double @llvm.fmuladd.f64(double %67, double %96, double %390)
%392 = fmul double %117, %67
%393 = tail call double @llvm.fmuladd.f64(double %351, double 2.000000e+00, double %392)
%394 = fsub double %393, %352
%395 = fmul double %138, %391
%396 = tail call double @llvm.fmuladd.f64(double %8, double %394, double %395)
%397 = shufflevector <2 x double> %314, <2 x double> %368, <2 x i32> <i32 0, i32 2>
%398 = insertelement <2 x double> poison, double %396, i64 0
%399 = insertelement <2 x double> %398, double %358, i64 1
%400 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %220, <2 x double> %397, <2 x double> %399)
%401 = insertelement <2 x double> %218, double %354, i64 1
%402 = insertelement <2 x double> %318, double %226, i64 1
%403 = fmul <2 x double> %401, %402
%404 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %400, <2 x double> %322, <2 x double> %403)
%405 = getelementptr inbounds [3 x double], [3 x double]* %6, i64 0, i64 2
%406 = bitcast double* %405 to <2 x double>*
store <2 x double> %404, <2 x double>* %406
%407 = insertelement <2 x double> poison, double %373, i64 0
%408 = shufflevector <2 x double> %407, <2 x double> %218, <2 x i32> <i32 0, i32 2>
%409 = fmul <2 x double> %408, %326
%410 = insertelement <2 x double> poison, double %388, i64 0
%411 = insertelement <2 x double> %410, double %391, i64 1
%412 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %328, <2 x double> %411, <2 x double> %409)
%413 = fmul <2 x double> %408, %331
%414 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %412, <2 x double> %322, <2 x double> %413)
%415 = bitcast double* %389 to <2 x double>*
store <2 x double> %414, <2 x double>* %415
ret void
}