void calcImgProjJacRT(double a[5], double qr0[4], double v[3], double t[3],
                      double M[3], double jacmRT[2][6]) {
  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 t3;
  double t30;
  double t35;
  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;
    return;
  }
}


x86 assembly (clang, -O0):
<calcImgProjJacRT>:
push   %rbp
mov    %rsp,%rbp
sub    $0x2c0,%rsp
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,-0x1e8(%rbp)
ff
mov    -0x18(%rbp),%rax
movsd  0x8(%rax),%xmm0
movsd  %xmm0,-0x208(%rbp)
ff
movsd  -0x208(%rbp),%xmm0
ff
mulsd  -0x208(%rbp),%xmm0
ff
movsd  %xmm0,-0x220(%rbp)
ff
mov    -0x18(%rbp),%rax
movsd  0x10(%rax),%xmm0
movsd  %xmm0,-0x248(%rbp)
ff
movsd  -0x248(%rbp),%xmm0
ff
mulsd  -0x248(%rbp),%xmm0
ff
movsd  %xmm0,-0x260(%rbp)
ff
movsd  0x1e3e(%rip),%xmm0
subsd  -0x1e8(%rbp),%xmm0
ff
subsd  -0x220(%rbp),%xmm0
ff
subsd  -0x260(%rbp),%xmm0
ff
call   1030 <sqrt@plt>
movsd  %xmm0,-0x2a0(%rbp)
ff
movsd  0x1e11(%rip),%xmm0
divsd  -0x2a0(%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,-0x1f0(%rbp)
ff
movsd  -0x2a0(%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  -0x208(%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  -0x248(%rbp),%xmm0
ff
movsd  -0x100(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1f8(%rbp)
ff
movsd  -0x1f8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x200(%rbp)
ff
movsd  -0x2a0(%rbp),%xmm0
ff
movsd  -0x100(%rbp),%xmm2
ff
movsd  -0x208(%rbp),%xmm1
ff
mulsd  -0x80(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x248(%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,-0x210(%rbp)
ff
movsd  -0x2a0(%rbp),%xmm0
ff
movsd  -0x148(%rbp),%xmm2
ff
movsd  -0x248(%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  -0x208(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x218(%rbp)
ff
movsd  -0x200(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  -0xc8(%rbp),%xmm2
ff
movsd  -0x210(%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  -0x218(%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,-0x228(%rbp)
ff
movsd  -0xa8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x230(%rbp)
ff
movsd  -0x40(%rbp),%xmm0
mulsd  -0x80(%rbp),%xmm0
movsd  %xmm0,-0x238(%rbp)
ff
movsd  -0x238(%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,-0x240(%rbp)
ff
movsd  -0x2a0(%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  -0x208(%rbp),%xmm1
movsd  -0x100(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x248(%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,-0x250(%rbp)
ff
movsd  -0x250(%rbp),%xmm1
ff
movsd  -0xc8(%rbp),%xmm2
ff
movsd  -0x210(%rbp),%xmm0
ff
mulsd  -0x1d8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x168(%rbp),%xmm0
ff
movsd  -0x218(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x258(%rbp)
ff
movsd  -0x240(%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,-0x268(%rbp)
ff
movsd  -0x240(%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,-0x270(%rbp)
ff
movsd  -0x218(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x278(%rbp)
ff
movsd  -0x250(%rbp),%xmm1
ff
movsd  -0x168(%rbp),%xmm2
ff
movsd  -0x218(%rbp),%xmm0
ff
mulsd  -0xc8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x200(%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,-0x280(%rbp)
ff
movsd  -0x1c8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x288(%rbp)
ff
movsd  -0x240(%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,-0x290(%rbp)
ff
movsd  -0x210(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x298(%rbp)
ff
movsd  -0x250(%rbp),%xmm1
ff
movsd  -0x1d8(%rbp),%xmm2
ff
movsd  -0x200(%rbp),%xmm0
ff
mulsd  -0x168(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x210(%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,-0x2a8(%rbp)
ff
movsd  -0x158(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x2b0(%rbp)
ff
mov    -0x8(%rbp),%rax
movsd  0x20(%rax),%xmm0
movsd  %xmm0,-0x2b8(%rbp)
ff
movsd  -0x1f0(%rbp),%xmm0
ff
movsd  -0x298(%rbp),%xmm2
ff
movsd  -0x2b0(%rbp),%xmm1
ff
mulsd  -0x228(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x240(%rbp),%xmm1
ff
movsd  -0x280(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x250(%rbp),%xmm0
ff
movsd  -0x270(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x290(%rbp),%xmm1
ff
movsd  -0x1f8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2a8(%rbp),%xmm0
ff
movsd  -0x230(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x268(%rbp),%xmm1
ff
movsd  -0x278(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x288(%rbp),%xmm0
ff
movsd  -0x258(%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  -0x1f0(%rbp),%xmm0
ff
movsd  -0x278(%rbp),%xmm2
ff
movsd  -0x288(%rbp),%xmm1
ff
mulsd  -0x228(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x240(%rbp),%xmm1
ff
movsd  -0x2a8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x250(%rbp),%xmm0
ff
movsd  -0x290(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x268(%rbp),%xmm1
ff
movsd  -0x298(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x258(%rbp),%xmm0
ff
movsd  -0x2b0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x1f8(%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  -0x280(%rbp),%xmm0
ff
movsd  -0x230(%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  -0x278(%rbp),%xmm0
ff
movsd  -0x228(%rbp),%xmm2
ff
movsd  -0x250(%rbp),%xmm1
ff
mulsd  -0x2a8(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x258(%rbp),%xmm1
ff
movsd  -0x298(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x280(%rbp),%xmm0
ff
movsd  -0x1f8(%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  0x1351(%rip),%xmm0
divsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x78(%rbp)
movsd  -0x228(%rbp),%xmm0
ff
movsd  -0x298(%rbp),%xmm2
ff
movsd  -0x250(%rbp),%xmm1
ff
mulsd  -0x280(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x2a8(%rbp),%xmm1
ff
movsd  -0x1f8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x258(%rbp),%xmm0
movsd  -0x278(%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  0x12ad(%rip),%xmm0
divsd  -0x90(%rbp),%xmm0
ff
movsd  %xmm0,-0x98(%rbp)
ff
movsd  -0x38(%rbp),%xmm1
movsd  -0x1f8(%rbp),%xmm2
ff
movsd  -0x228(%rbp),%xmm3
ff
movsd  -0x250(%rbp),%xmm0
ff
mulsd  -0x258(%rbp),%xmm0
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x280(%rbp),%xmm0
ff
movsd  -0x278(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x2a8(%rbp),%xmm2
ff
movsd  -0x298(%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  -0x2b8(%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  -0x1f0(%rbp),%xmm2
ff
movsd  -0x1f8(%rbp),%xmm3
ff
movsd  -0x230(%rbp),%xmm0
ff
mulsd  -0x228(%rbp),%xmm0
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x240(%rbp),%xmm0
ff
movsd  -0x258(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x250(%rbp),%xmm2
ff
movsd  -0x268(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x278(%rbp),%xmm0
ff
movsd  -0x270(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x280(%rbp),%xmm2
ff
movsd  -0x288(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x298(%rbp),%xmm0
ff
movsd  -0x290(%rbp),%xmm3
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x2a8(%rbp),%xmm2
ff
movsd  -0x2b0(%rbp),%xmm3
ff
movq   %xmm2,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm2
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x2b8(%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  -0x208(%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  -0x208(%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  -0x208(%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  -0x238(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x208(%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
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  -0x298(%rbp),%xmm2
ff
movsd  -0x228(%rbp),%xmm1
ff
mulsd  -0x130(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0xf8(%rbp),%xmm1
ff
movsd  -0x280(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x250(%rbp),%xmm0
ff
movsd  -0x110(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x128(%rbp),%xmm1
ff
movsd  -0x1f8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2a8(%rbp),%xmm0
ff
movsd  -0xf0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x278(%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  -0x258(%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  -0x278(%rbp),%xmm2
ff
movsd  -0x228(%rbp),%xmm1
ff
mulsd  -0x118(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x2a8(%rbp),%xmm1
ff
movsd  -0xf8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x250(%rbp),%xmm0
ff
movsd  -0x128(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x108(%rbp),%xmm1
ff
movsd  -0x298(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x258(%rbp),%xmm0
ff
movsd  -0x130(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x110(%rbp),%xmm1
ff
movsd  -0x1f8(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x280(%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  -0x1f8(%rbp),%xmm3
ff
movsd  -0xf0(%rbp),%xmm0
ff
mulsd  -0x228(%rbp),%xmm0
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0xf8(%rbp),%xmm0
ff
movsd  -0x258(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x108(%rbp),%xmm2
ff
movsd  -0x250(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x110(%rbp),%xmm0
ff
movsd  -0x278(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x280(%rbp),%xmm2
ff
movsd  -0x118(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x128(%rbp),%xmm0
ff
movsd  -0x298(%rbp),%xmm3
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x2a8(%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  -0x2b8(%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  -0x248(%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  -0x248(%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  -0x248(%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  -0x238(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x248(%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  -0x298(%rbp),%xmm2
ff
movsd  -0x228(%rbp),%xmm1
ff
mulsd  -0x1c0(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x280(%rbp),%xmm1
ff
movsd  -0x190(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x250(%rbp),%xmm0
ff
movsd  -0x1a8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x1b8(%rbp),%xmm1
ff
movsd  -0x1f8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2a8(%rbp),%xmm0
ff
movsd  -0x188(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x198(%rbp),%xmm1
ff
movsd  -0x278(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x258(%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  -0x278(%rbp),%xmm2
ff
movsd  -0x228(%rbp),%xmm1
ff
mulsd  -0x1b0(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x190(%rbp),%xmm1
ff
movsd  -0x2a8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x250(%rbp),%xmm0
ff
movsd  -0x1b8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x198(%rbp),%xmm1
ff
movsd  -0x298(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x1c0(%rbp),%xmm0
ff
movsd  -0x258(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x1a8(%rbp),%xmm1
ff
movsd  -0x1f8(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x280(%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  -0x1f8(%rbp),%xmm3
ff
movsd  -0x188(%rbp),%xmm0
ff
mulsd  -0x228(%rbp),%xmm0
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x190(%rbp),%xmm0
ff
movsd  -0x258(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x250(%rbp),%xmm2
ff
movsd  -0x198(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x1a8(%rbp),%xmm0
ff
movsd  -0x278(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x280(%rbp),%xmm2
ff
movsd  -0x1b0(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x1b8(%rbp),%xmm0
ff
movsd  -0x298(%rbp),%xmm3
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x2a8(%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
mulsd  -0x2b8(%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  -0x2b8(%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)
add    $0x2c0,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<calcImgProjJacRT>:
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x1e0,%rsp
mov    %r9,%r14
mov    %r8,%r13
mov    %rcx,%r15
mov    %rsi,%rbx
mov    %rdi,%r12
movsd  (%rdi),%xmm0
movaps %xmm0,0x110(%rsp)
movsd  (%rdx),%xmm1
movapd %xmm1,0x70(%rsp)
mulsd  %xmm1,%xmm1
movupd 0x8(%rdx),%xmm0
movapd %xmm0,%xmm2
mulsd  %xmm0,%xmm2
movapd %xmm0,0xb0(%rsp)
movapd %xmm0,%xmm3
unpckhpd %xmm0,%xmm3
movapd %xmm3,0x80(%rsp)
mulsd  %xmm3,%xmm3
movsd  0xe84(%rip),%xmm0
subsd  %xmm1,%xmm0
subsd  %xmm2,%xmm0
subsd  %xmm3,%xmm0
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jb     1198 <calcImgProjJacRT+0x88>
sqrtsd %xmm0,%xmm0
jmp    119d <calcImgProjJacRT+0x8d>
call   1030 <sqrt@plt>
movsd  0xe5b(%rip),%xmm2
divsd  %xmm0,%xmm2
movupd (%rbx),%xmm4
movupd 0x10(%rbx),%xmm7
movapd %xmm4,%xmm1
unpckhpd %xmm4,%xmm1
movapd %xmm1,0x10(%rsp)
movapd %xmm0,%xmm8
movapd 0xe43(%rip),%xmm0
xorpd  %xmm0,%xmm1
movapd %xmm1,(%rsp)
movapd %xmm7,%xmm3
xorpd  %xmm0,%xmm3
movapd %xmm0,%xmm9
movapd %xmm3,0x1d0(%rsp)
movapd %xmm2,%xmm13
mulsd  %xmm3,%xmm13
pshufd $0xee,%xmm3,%xmm3
movapd %xmm13,%xmm5
movapd 0x70(%rsp),%xmm14
mulsd  %xmm14,%xmm5
addsd  %xmm3,%xmm5
movapd %xmm5,%xmm0
movapd %xmm5,0x30(%rsp)
movapd %xmm2,%xmm3
mulsd  %xmm1,%xmm3
movapd %xmm3,0x1c0(%rsp)
mulsd  %xmm14,%xmm3
addsd  %xmm4,%xmm3
movapd %xmm3,0x40(%rsp)
movapd %xmm3,%xmm5
xorpd  %xmm9,%xmm5
movsd  0x8(%r13),%xmm3
movapd %xmm3,0x130(%rsp)
mulsd  %xmm0,%xmm3
movsd  0x0(%r13),%xmm0
movapd %xmm0,0x50(%rsp)
mulsd  %xmm0,%xmm5
subsd  %xmm3,%xmm5
movapd %xmm5,%xmm0
xorpd  %xmm9,%xmm2
movapd %xmm7,0x140(%rsp)
movapd %xmm7,%xmm6
unpckhpd %xmm7,%xmm6
movapd %xmm6,%xmm3
mulsd  %xmm2,%xmm3
movapd %xmm3,0xf0(%rsp)
mulsd  %xmm14,%xmm3
addsd  %xmm7,%xmm3
movapd %xmm3,0x20(%rsp)
movsd  0x10(%r13),%xmm5
movapd %xmm5,0xc0(%rsp)
mulsd  %xmm5,%xmm3
subsd  %xmm3,%xmm0
movapd %xmm0,0x90(%rsp)
movapd %xmm8,%xmm3
movapd %xmm8,%xmm7
xorpd  %xmm9,%xmm7
movapd 0xb0(%rsp),%xmm8
movapd %xmm8,%xmm9
mulsd  %xmm6,%xmm9
movapd %xmm8,%xmm15
mulsd  %xmm4,%xmm15
movapd %xmm14,%xmm11
mulsd  %xmm6,%xmm11
movapd 0x80(%rsp),%xmm12
movapd %xmm12,%xmm5
mulsd  %xmm4,%xmm5
mulsd  %xmm3,%xmm6
movapd %xmm3,%xmm0
mulsd  %xmm4,%xmm2
unpcklpd %xmm13,%xmm13
mulpd  %xmm8,%xmm13
addpd  %xmm4,%xmm13
movapd %xmm13,0xa0(%rsp)
movapd (%rsp),%xmm10
unpcklpd %xmm4,%xmm10
mulsd  %xmm4,%xmm0
movapd %xmm0,0x60(%rsp)
mulsd  %xmm14,%xmm4
movapd 0x10(%rsp),%xmm0
mulsd  %xmm0,%xmm7
subsd  %xmm4,%xmm7
subsd  %xmm9,%xmm7
movapd %xmm12,%xmm1
movapd 0x140(%rsp),%xmm4
mulsd  %xmm4,%xmm1
addsd  %xmm7,%xmm1
movapd %xmm1,0x150(%rsp)
mulsd  %xmm4,%xmm3
movapd %xmm4,%xmm7
addsd  %xmm15,%xmm3
movapd %xmm12,%xmm4
mulsd  %xmm0,%xmm4
addsd  %xmm3,%xmm4
subsd  %xmm11,%xmm4
movapd %xmm4,0xd0(%rsp)
addsd  %xmm5,%xmm6
movapd 0x130(%rsp),%xmm15
movapd %xmm15,%xmm3
mulsd  %xmm4,%xmm3
movapd %xmm1,%xmm4
movapd 0x50(%rsp),%xmm13
mulsd  %xmm13,%xmm4
subsd  %xmm3,%xmm4
movapd %xmm4,%xmm0
movapd 0xf0(%rsp),%xmm5
unpcklpd %xmm5,%xmm5
mulpd  %xmm8,%xmm5
addpd  %xmm10,%xmm5
movapd %xmm5,0xf0(%rsp)
movapd 0xa0(%rsp),%xmm11
movapd %xmm11,%xmm3
unpckhpd %xmm11,%xmm3
movapd 0xc0(%rsp),%xmm9
mulsd  %xmm9,%xmm3
unpcklpd %xmm3,%xmm6
movapd %xmm2,%xmm4
unpcklpd %xmm2,%xmm4
mulpd  %xmm8,%xmm4
movapd %xmm8,%xmm10
subpd  %xmm7,%xmm4
movapd %xmm4,%xmm3
movapd %xmm4,%xmm8
movapd %xmm4,0x190(%rsp)
movsd  %xmm14,%xmm3
movapd %xmm7,%xmm1
unpcklpd %xmm13,%xmm1
mulpd  %xmm1,%xmm3
addpd  %xmm6,%xmm3
movapd %xmm5,%xmm6
movapd 0xba8(%rip),%xmm13
xorpd  %xmm13,%xmm6
movapd (%rsp),%xmm5
shufpd $0x2,%xmm6,%xmm5
movapd %xmm10,%xmm4
unpcklpd %xmm15,%xmm4
mulpd  %xmm5,%xmm4
addpd  %xmm3,%xmm4
movapd %xmm4,0xe0(%rsp)
movapd %xmm4,%xmm3
mulsd  %xmm9,%xmm3
subsd  %xmm3,%xmm0
movapd %xmm0,(%rsp)
movapd %xmm2,%xmm5
mulsd  %xmm14,%xmm5
movapd 0x10(%rsp),%xmm0
subsd  %xmm0,%xmm5
mulsd  %xmm14,%xmm0
movapd 0x60(%rsp),%xmm3
subsd  %xmm0,%xmm3
movapd %xmm11,%xmm2
mulsd  %xmm9,%xmm2
unpcklpd %xmm2,%xmm3
movapd %xmm10,%xmm2
xorpd  %xmm13,%xmm2
unpcklpd %xmm8,%xmm2
mulpd  %xmm1,%xmm2
addpd  %xmm3,%xmm2
xorpd  %xmm13,%xmm12
unpcklpd %xmm6,%xmm12
movapd %xmm7,%xmm14
movapd %xmm15,%xmm4
shufpd $0x1,%xmm15,%xmm14
mulpd  %xmm12,%xmm14
addpd  %xmm2,%xmm14
movapd 0xd0(%rsp),%xmm6
movapd %xmm6,%xmm0
movapd %xmm9,%xmm7
mulsd  %xmm9,%xmm0
movapd %xmm14,%xmm1
movapd 0x50(%rsp),%xmm9
mulsd  %xmm9,%xmm1
addsd  %xmm0,%xmm1
movapd %xmm15,%xmm0
movapd 0xe0(%rsp),%xmm3
mulsd  %xmm3,%xmm0
subsd  %xmm0,%xmm1
movapd %xmm1,0x60(%rsp)
movapd 0x30(%rsp),%xmm2
movapd %xmm2,%xmm0
mulsd  %xmm7,%xmm0
movapd %xmm5,%xmm11
movapd %xmm5,%xmm10
mulsd  %xmm9,%xmm10
addsd  %xmm0,%xmm10
movapd %xmm4,%xmm0
movapd 0x20(%rsp),%xmm1
mulsd  %xmm1,%xmm0
subsd  %xmm0,%xmm10
movapd %xmm9,%xmm0
mulsd  %xmm1,%xmm0
movapd %xmm5,%xmm15
mulsd  %xmm4,%xmm15
addsd  %xmm0,%xmm15
movapd %xmm7,%xmm0
movapd 0x40(%rsp),%xmm1
mulsd  %xmm1,%xmm0
subsd  %xmm0,%xmm15
movapd %xmm9,%xmm0
mulsd  %xmm3,%xmm0
movapd %xmm14,%xmm3
mulsd  %xmm4,%xmm3
addsd  %xmm0,%xmm3
movapd 0x150(%rsp),%xmm8
movapd %xmm8,%xmm12
mulsd  %xmm7,%xmm12
addsd  %xmm3,%xmm12
movapd %xmm12,0x10(%rsp)
movapd %xmm1,%xmm0
mulsd  %xmm4,%xmm0
movapd %xmm5,%xmm13
mulsd  %xmm7,%xmm13
addsd  %xmm0,%xmm13
movapd %xmm2,%xmm0
mulsd  %xmm9,%xmm0
subsd  %xmm0,%xmm13
movapd %xmm4,%xmm0
mulsd  %xmm8,%xmm0
movapd %xmm14,%xmm3
mulsd  %xmm7,%xmm3
subsd  %xmm0,%xmm3
movapd %xmm6,%xmm0
mulsd  %xmm9,%xmm0
subsd  %xmm0,%xmm3
movapd %xmm3,%xmm9
movapd %xmm6,%xmm3
xorpd  0x9ca(%rip),%xmm3
movapd %xmm3,0x1b0(%rsp)
movapd (%rsp),%xmm4
movapd %xmm4,%xmm0
mulsd  %xmm2,%xmm0
movapd 0x90(%rsp),%xmm6
movapd %xmm6,%xmm7
mulsd  %xmm3,%xmm7
subsd  %xmm0,%xmm7
movapd %xmm5,%xmm0
movapd %xmm5,0x100(%rsp)
mulsd  %xmm12,%xmm0
addsd  %xmm7,%xmm0
movapd %xmm14,%xmm7
mulsd  %xmm15,%xmm7
addsd  %xmm0,%xmm7
movapd %xmm13,%xmm0
mulsd  %xmm8,%xmm0
addsd  %xmm7,%xmm0
movapd %xmm9,%xmm7
movapd 0x40(%rsp),%xmm12
mulsd  %xmm12,%xmm7
subsd  %xmm7,%xmm0
movapd %xmm10,%xmm7
movapd 0xe0(%rsp),%xmm5
mulsd  %xmm5,%xmm7
addsd  %xmm0,%xmm7
movapd 0x20(%rsp),%xmm3
movapd %xmm3,%xmm0
movapd 0x60(%rsp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm7,%xmm0
movapd %xmm0,0x80(%rsp)
movapd %xmm5,%xmm1
xorpd  0x915(%rip),%xmm1
movapd %xmm1,0x1a0(%rsp)
mulsd  %xmm3,%xmm4
mulsd  %xmm1,%xmm6
subsd  %xmm4,%xmm6
mulsd  %xmm9,%xmm11
movapd %xmm9,%xmm1
addsd  %xmm6,%xmm11
movapd %xmm14,%xmm7
mulsd  %xmm13,%xmm7
addsd  %xmm11,%xmm7
movapd %xmm10,%xmm0
movapd 0xd0(%rsp),%xmm4
mulsd  %xmm4,%xmm0
subsd  %xmm0,%xmm7
movapd %xmm2,%xmm0
mulsd  0x30(%rsp),%xmm0
subsd  %xmm0,%xmm7
movapd %xmm8,%xmm0
mulsd  %xmm15,%xmm0
subsd  %xmm0,%xmm7
movapd 0x10(%rsp),%xmm11
movapd %xmm11,%xmm9
mulsd  %xmm12,%xmm9
addsd  %xmm7,%xmm9
movapd %xmm14,%xmm0
mulsd  %xmm1,%xmm0
movapd %xmm1,%xmm12
movapd (%rsp),%xmm1
mulsd  %xmm1,%xmm5
subsd  %xmm5,%xmm0
movapd %xmm2,%xmm7
mulsd  %xmm4,%xmm7
movapd %xmm4,%xmm5
subsd  %xmm7,%xmm0
movapd %xmm11,%xmm7
mulsd  %xmm8,%xmm7
subsd  %xmm7,%xmm0
movapd %xmm14,%xmm7
mulsd  %xmm11,%xmm7
movapd %xmm1,%xmm4
mulsd  %xmm5,%xmm4
subsd  %xmm4,%xmm7
movapd %xmm12,%xmm4
mulsd  %xmm8,%xmm4
addsd  %xmm7,%xmm4
movapd %xmm2,%xmm7
movapd %xmm2,%xmm3
movapd 0xe0(%rsp),%xmm1
mulsd  %xmm1,%xmm3
addsd  0x10(%r15),%xmm0
addsd  %xmm4,%xmm3
movapd %xmm0,%xmm4
mulsd  %xmm0,%xmm4
movsd  0x7fe(%rip),%xmm5
movapd %xmm5,0x70(%rsp)
divsd  %xmm4,%xmm5
movsd  %xmm5,0x128(%rsp)
movapd %xmm14,%xmm4
mulsd  %xmm2,%xmm4
movapd %xmm8,%xmm2
movapd (%rsp),%xmm6
mulsd  %xmm6,%xmm2
addsd  %xmm4,%xmm2
movapd %xmm11,%xmm4
mulsd  %xmm1,%xmm4
movapd %xmm1,%xmm11
subsd  %xmm4,%xmm2
movapd %xmm12,%xmm4
movapd 0xd0(%rsp),%xmm5
mulsd  %xmm5,%xmm4
addsd  %xmm2,%xmm4
addsd  0x8(%r15),%xmm3
addsd  (%r15),%xmm4
movsd  0x20(%r12),%xmm2
movapd %xmm2,0x160(%rsp)
mulsd  %xmm3,%xmm2
mulsd  0x110(%rsp),%xmm4
addsd  %xmm2,%xmm4
movsd  0x8(%r12),%xmm1
movapd %xmm1,0x170(%rsp)
movapd %xmm0,%xmm2
mulsd  %xmm1,%xmm2
addsd  %xmm4,%xmm2
movapd 0x40(%rsp),%xmm4
mulsd  %xmm6,%xmm4
movapd 0x90(%rsp),%xmm1
mulsd  %xmm8,%xmm1
subsd  %xmm4,%xmm1
movapd 0x100(%rsp),%xmm4
mulsd  %xmm7,%xmm4
addsd  %xmm1,%xmm4
mulsd  %xmm14,%xmm10
addsd  %xmm4,%xmm10
mulsd  %xmm11,%xmm15
subsd  %xmm15,%xmm10
movapd 0x20(%rsp),%xmm1
mulsd  0x10(%rsp),%xmm1
subsd  %xmm1,%xmm10
mulsd  %xmm5,%xmm13
addsd  %xmm10,%xmm13
movapd 0x30(%rsp),%xmm4
movapd %xmm12,0x180(%rsp)
mulsd  %xmm12,%xmm4
addsd  %xmm13,%xmm4
movapd 0x160(%rsp),%xmm1
movapd 0x80(%rsp),%xmm7
mulsd  %xmm7,%xmm1
movapd 0x110(%rsp),%xmm5
mulsd  %xmm5,%xmm4
addsd  %xmm1,%xmm4
movapd 0x170(%rsp),%xmm1
mulsd  %xmm9,%xmm1
addsd  %xmm4,%xmm1
movapd 0x70(%rsp),%xmm6
divsd  %xmm0,%xmm6
movapd %xmm6,0x70(%rsp)
movapd %xmm2,%xmm4
movsd  0x128(%rsp),%xmm12
mulsd  %xmm12,%xmm4
movapd %xmm4,%xmm2
movapd %xmm4,%xmm8
movapd %xmm4,0x100(%rsp)
mulsd  %xmm9,%xmm2
mulsd  %xmm6,%xmm1
subsd  %xmm2,%xmm1
movsd  %xmm1,(%r14)
movsd  0x18(%r12),%xmm1
mulsd  %xmm5,%xmm1
movapd %xmm1,0x90(%rsp)
movsd  0x10(%r12),%xmm2
movapd %xmm2,0x40(%rsp)
mulsd  %xmm2,%xmm0
mulsd  %xmm1,%xmm3
addsd  %xmm0,%xmm3
movapd %xmm2,%xmm0
mulsd  %xmm9,%xmm0
movapd %xmm7,%xmm2
mulsd  %xmm1,%xmm2
addsd  %xmm0,%xmm2
movapd %xmm2,0x80(%rsp)
movapd 0x627(%rip),%xmm1
xorpd  %xmm1,%xmm3
mulsd  %xmm12,%xmm3
movapd %xmm3,0x20(%rsp)
movapd 0x140(%rsp),%xmm0
shufpd $0x1,0x1d0(%rsp),%xmm0
movapd 0x1c0(%rsp),%xmm11
unpcklpd %xmm11,%xmm11
mulpd  0xb0(%rsp),%xmm11
addpd  %xmm0,%xmm11
movapd 0x130(%rsp),%xmm6
movapd %xmm6,%xmm0
xorpd  %xmm1,%xmm0
mulsd  %xmm3,%xmm9
movapd 0xa0(%rsp),%xmm4
movapd %xmm4,%xmm15
xorpd  %xmm1,%xmm15
xorpd  %xmm8,%xmm1
unpcklpd %xmm9,%xmm1
movapd %xmm1,0x30(%rsp)
movapd %xmm6,%xmm1
unpcklpd %xmm0,%xmm1
movapd %xmm4,%xmm2
movsd  %xmm15,%xmm2
mulpd  %xmm1,%xmm2
movapd 0x50(%rsp),%xmm1
unpcklpd %xmm1,%xmm1
movapd %xmm11,%xmm0
mulpd  %xmm1,%xmm0
subpd  %xmm0,%xmm2
movapd 0xc0(%rsp),%xmm3
unpcklpd %xmm3,%xmm3
movapd %xmm3,0xc0(%rsp)
movapd 0xf0(%rsp),%xmm7
movapd %xmm7,%xmm0
mulpd  %xmm3,%xmm0
subpd  %xmm0,%xmm2
movapd %xmm2,0x50(%rsp)
movapd 0x190(%rsp),%xmm10
movapd %xmm10,%xmm0
unpcklpd %xmm6,%xmm0
movapd %xmm10,%xmm8
movsd  %xmm6,%xmm8
mulpd  %xmm0,%xmm8
movapd (%rsp),%xmm5
unpcklpd %xmm5,%xmm5
movapd %xmm5,%xmm0
mulpd  %xmm4,%xmm0
movapd %xmm0,0xb0(%rsp)
movapd %xmm10,%xmm13
movapd 0x180(%rsp),%xmm9
movsd  %xmm9,%xmm13
movapd %xmm10,%xmm2
unpcklpd %xmm9,%xmm2
unpcklpd %xmm9,%xmm9
movapd %xmm9,%xmm3
mulpd  %xmm4,%xmm9
movapd %xmm1,%xmm0
mulpd  %xmm1,%xmm4
movapd %xmm7,%xmm1
mulpd  %xmm7,%xmm0
addpd  %xmm0,%xmm8
movapd %xmm6,%xmm7
unpcklpd %xmm6,%xmm7
mulpd  %xmm11,%xmm7
movapd 0x10(%rsp),%xmm12
unpcklpd %xmm12,%xmm12
movapd %xmm12,%xmm6
mulpd  %xmm11,%xmm6
mulpd  %xmm11,%xmm3
movapd %xmm3,0xa0(%rsp)
movapd %xmm5,%xmm0
mulpd  %xmm11,%xmm5
movapd %xmm5,(%rsp)
movapd 0xc0(%rsp),%xmm5
mulpd  %xmm5,%xmm11
subpd  %xmm11,%xmm8
mulpd  %xmm10,%xmm5
addpd  %xmm7,%xmm5
subpd  %xmm4,%xmm5
mulpd  %xmm1,%xmm0
pshufd $0x44,0x1a0(%rsp),%xmm4
movapd 0x50(%rsp),%xmm7
mulpd  %xmm7,%xmm4
subpd  %xmm0,%xmm4
mulpd  %xmm13,%xmm2
addpd  %xmm4,%xmm2
movapd %xmm14,%xmm0
unpcklpd %xmm14,%xmm0
movapd %xmm0,%xmm4
mulpd  %xmm5,%xmm4
addpd  %xmm2,%xmm4
movapd %xmm14,%xmm2
movapd 0xe0(%rsp),%xmm13
unpckhpd %xmm13,%xmm2
movapd 0xd0(%rsp),%xmm3
unpcklpd %xmm3,%xmm3
mulpd  %xmm3,%xmm2
subpd  %xmm2,%xmm4
movapd %xmm15,%xmm2
movapd 0x60(%rsp),%xmm1
movsd  %xmm1,%xmm2
unpcklpd %xmm1,%xmm15
mulpd  %xmm2,%xmm15
addpd  %xmm4,%xmm15
movapd %xmm14,%xmm2
shufpd $0x1,%xmm13,%xmm2
mulpd  %xmm13,%xmm2
movapd %xmm14,%xmm11
shufpd $0x2,%xmm13,%xmm14
unpcklpd %xmm13,%xmm13
movapd 0x150(%rsp),%xmm4
unpcklpd %xmm4,%xmm4
mulpd  %xmm8,%xmm0
mulpd  %xmm8,%xmm13
movapd %xmm8,%xmm1
mulpd  %xmm4,%xmm1
movapd %xmm4,%xmm8
subpd  %xmm1,%xmm15
addpd  %xmm15,%xmm6
pshufd $0x44,0x1b0(%rsp),%xmm1
mulpd  %xmm7,%xmm1
movapd %xmm7,%xmm15
subpd  0xb0(%rsp),%xmm1
movapd %xmm10,%xmm4
movapd 0x10(%rsp),%xmm7
unpcklpd %xmm7,%xmm4
shufpd $0x2,%xmm10,%xmm7
mulpd  %xmm4,%xmm7
addpd  %xmm1,%xmm7
addpd  %xmm7,%xmm0
mulpd  %xmm5,%xmm3
movapd %xmm8,%xmm4
mulpd  %xmm8,%xmm5
addpd  %xmm0,%xmm5
subpd  0xa0(%rsp),%xmm5
addpd  %xmm5,%xmm2
movapd 0x60(%rsp),%xmm8
unpcklpd %xmm8,%xmm8
mulpd  %xmm8,%xmm10
movapd 0xf0(%rsp),%xmm0
mulpd  %xmm0,%xmm8
addpd  %xmm2,%xmm8
mulpd  %xmm15,%xmm4
subpd  (%rsp),%xmm4
addpd  %xmm10,%xmm4
shufpd $0x1,%xmm11,%xmm11
mulpd  %xmm11,%xmm14
addpd  %xmm4,%xmm14
subpd  %xmm13,%xmm14
mulpd  %xmm0,%xmm12
subpd  %xmm12,%xmm14
addpd  %xmm14,%xmm3
addpd  %xmm3,%xmm9
movapd 0x110(%rsp),%xmm3
movapd %xmm3,%xmm1
unpcklpd %xmm3,%xmm1
mulpd  %xmm9,%xmm1
movapd 0x70(%rsp),%xmm7
movapd %xmm7,%xmm2
movapd 0x90(%rsp),%xmm4
movapd %xmm4,%xmm0
mulsd  %xmm7,%xmm4
movapd %xmm4,%xmm12
movapd 0x40(%rsp),%xmm4
mulsd  %xmm4,%xmm7
movapd 0x160(%rsp),%xmm5
unpcklpd %xmm5,%xmm3
movapd %xmm3,%xmm11
unpcklpd %xmm5,%xmm5
mulpd  %xmm8,%xmm5
addpd  %xmm5,%xmm1
movapd %xmm6,%xmm5
movapd 0x100(%rsp),%xmm3
unpcklpd %xmm3,%xmm3
mulpd  %xmm6,%xmm3
movapd %xmm3,%xmm9
unpcklpd %xmm4,%xmm4
mulpd  %xmm6,%xmm4
movapd 0x20(%rsp),%xmm3
addsd  %xmm3,%xmm7
movapd %xmm7,%xmm10
movapd %xmm3,%xmm7
unpcklpd %xmm3,%xmm7
mulpd  %xmm6,%xmm7
movapd %xmm6,%xmm3
movapd 0x170(%rsp),%xmm6
movsd  %xmm6,%xmm3
unpcklpd %xmm6,%xmm5
mulpd  %xmm3,%xmm5
addpd  %xmm1,%xmm5
unpcklpd %xmm2,%xmm2
mulpd  %xmm2,%xmm5
subpd  %xmm9,%xmm5
movupd %xmm5,0x8(%r14)
unpcklpd %xmm0,%xmm0
mulpd  %xmm8,%xmm0
addpd  %xmm4,%xmm0
mulpd  %xmm2,%xmm0
addpd  %xmm7,%xmm0
movupd %xmm0,0x38(%r14)
movq   $0x0,0x48(%r14)
movapd %xmm11,%xmm0
mulpd  %xmm2,%xmm0
movupd %xmm0,0x18(%r14)
movsd  %xmm12,0x50(%r14)
unpcklpd 0x80(%rsp),%xmm6
mulpd  %xmm2,%xmm6
addpd  0x30(%rsp),%xmm6
movupd %xmm6,0x28(%r14)
movsd  %xmm10,0x58(%r14)
add    $0x1e0,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
ret

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

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