double gsw_thermobaric(double sa, double ct, double p) {
  double v01 = 9.998420897506056e2, v02 = 2.839940833161907e0,
         v03 = -3.147759265588511e-2, v04 = 1.181805545074306e-3,
         v05 = -6.698001071123802e0, v06 = -2.986498947203215e-2,
         v07 = 2.327859407479162e-4, v08 = -3.988822378968490e-2,
         v09 = 5.095422573880500e-4, v10 = -1.426984671633621e-5,
         v11 = 1.645039373682922e-7, v12 = -2.233269627352527e-2,
         v13 = -3.436090079851880e-4, v14 = 3.726050720345733e-6,
         v15 = -1.806789763745328e-4, v16 = 6.876837219536232e-7,
         v17 = -3.087032500374211e-7, v18 = -1.988366587925593e-8,
         v19 = -1.061519070296458e-11, v20 = 1.550932729220080e-10, v21 = 1.0e0,
         v22 = 2.775927747785646e-3, v23 = -2.349607444135925e-5,
         v24 = 1.119513357486743e-6, v25 = 6.743689325042773e-10,
         v26 = -7.521448093615448e-3, v27 = -2.764306979894411e-5,
         v28 = 1.262937315098546e-7, v29 = 9.527875081696435e-10,
         v30 = -1.811147201949891e-11, v31 = -3.303308871386421e-5,
         v32 = 3.801564588876298e-7, v33 = -7.672876869259043e-9,
         v34 = -4.634182341116144e-11, v35 = 2.681097235569143e-12,
         v36 = 5.419326551148740e-6, v37 = -2.742185394906099e-5,
         v38 = -3.212746477974189e-7, v39 = 3.191413910561627e-9,
         v40 = -1.931012931541776e-12, v41 = -1.105097577149576e-7,
         v42 = 6.211426728363857e-10, v43 = -1.119011592875110e-10,
         v44 = -1.941660213148725e-11, v45 = -1.864826425365600e-14,
         v46 = 1.119522344879478e-14, v47 = -1.200507748551599e-15,
         v48 = 6.057902487546866e-17, a01 = 2.839940833161907e0,
         a02 = -6.295518531177023e-2, a03 = 3.545416635222918e-3,
         a04 = -2.986498947203215e-2, a05 = 4.655718814958324e-4,
         a06 = 5.095422573880500e-4, a07 = -2.853969343267241e-5,
         a08 = 4.935118121048767e-7, a09 = -3.436090079851880e-4,
         a10 = 7.452101440691467e-6, a11 = 6.876837219536232e-7,
         a12 = -1.988366587925593e-8, a13 = -2.123038140592916e-11,
         a14 = 2.775927747785646e-3, a15 = -4.699214888271850e-5,
         a16 = 3.358540072460230e-6, a17 = 2.697475730017109e-9,
         a18 = -2.764306979894411e-5, a19 = 2.525874630197091e-7,
         a20 = 2.858362524508931e-9, a21 = -7.244588807799565e-11,
         a22 = 3.801564588876298e-7, a23 = -1.534575373851809e-8,
         a24 = -1.390254702334843e-10, a25 = 1.072438894227657e-11,
         a26 = -3.212746477974189e-7, a27 = 6.382827821123254e-9,
         a28 = -5.793038794625329e-12, a29 = 6.211426728363857e-10,
         a30 = -1.941660213148725e-11, a31 = -3.729652850731201e-14,
         a32 = 1.119522344879478e-14, a33 = 6.057902487546866e-17,
         b01 = -6.698001071123802e0, b02 = -2.986498947203215e-2,
         b03 = 2.327859407479162e-4, b04 = -5.983233568452735e-2,
         b05 = 7.643133860820750e-4, b06 = -2.140477007450431e-5,
         b07 = 2.467559060524383e-7, b08 = -1.806789763745328e-4,
         b09 = 6.876837219536232e-7, b10 = 1.550932729220080e-10,
         b11 = -7.521448093615448e-3, b12 = -2.764306979894411e-5,
         b13 = 1.262937315098546e-7, b14 = 9.527875081696435e-10,
         b15 = -1.811147201949891e-11, b16 = -4.954963307079632e-5,
         b17 = 5.702346883314446e-7, b18 = -1.150931530388857e-8,
         b19 = -6.951273511674217e-11, b20 = 4.021645853353715e-12,
         b21 = 1.083865310229748e-5, b22 = -1.105097577149576e-7,
         b23 = 6.211426728363857e-10, b24 = 1.119522344879478e-14,
         c01 = -2.233269627352527e-2, c02 = -3.436090079851880e-4,
         c03 = 3.726050720345733e-6, c04 = -1.806789763745328e-4,
         c05 = 6.876837219536232e-7, c06 = -6.174065000748422e-7,
         c07 = -3.976733175851186e-8, c08 = -2.123038140592916e-11,
         c09 = 3.101865458440160e-10, c10 = -2.742185394906099e-5,
         c11 = -3.212746477974189e-7, c12 = 3.191413910561627e-9,
         c13 = -1.931012931541776e-12, c14 = -1.105097577149576e-7,
         c15 = 6.211426728363857e-10, c16 = -2.238023185750219e-10,
         c17 = -3.883320426297450e-11, c18 = -3.729652850731201e-14,
         c19 = 2.239044689758956e-14, c20 = -3.601523245654798e-15,
         c21 = 1.817370746264060e-16, rec_db2pa = 1e-4;
  double sqrtsa, v_hat_denominator, v_hat_numerator;
  double dvhatden_dct, dvhatnum_dct, dvhatden_dp, dvhatnum_dp;
  double dvhatden_dsa, dvhatnum_dsa, dvhatden_dpdct, dvhatnum_dpdct;
  double dvhatden_dpdsa, dvhatnum_dpdsa;
  double p1a, p1b, p1c, p1d, p1e, part1, factor2;
  double p2a, p2b, p2c, p2d, p2e, part2;
  sqrtsa = sqrt(sa);
  v_hat_denominator =
      v01 + ct * (v02 + ct * (v03 + v04 * ct)) +
      sa * (v05 + ct * (v06 + v07 * ct) +
            sqrtsa * (v08 + ct * (v09 + ct * (v10 + v11 * ct)))) +
      p * (v12 + ct * (v13 + v14 * ct) + sa * (v15 + v16 * ct) +
           p * (v17 + ct * (v18 + v19 * ct) + v20 * sa));
  v_hat_numerator =
      v21 + ct * (v22 + ct * (v23 + ct * (v24 + v25 * ct))) +
      sa * (v26 + ct * (v27 + ct * (v28 + ct * (v29 + v30 * ct))) + v36 * sa +
            sqrtsa * (v31 + ct * (v32 + ct * (v33 + ct * (v34 + v35 * ct))))) +
      p * (v37 + ct * (v38 + ct * (v39 + v40 * ct)) + sa * (v41 + v42 * ct) +
           p * (v43 + ct * (v44 + v45 * ct + v46 * sa) + p * (v47 + v48 * ct)));
  dvhatden_dct =
      a01 + ct * (a02 + a03 * ct) +
      sa * (a04 + a05 * ct + sqrtsa * (a06 + ct * (a07 + a08 * ct))) +
      p * (a09 + a10 * ct + a11 * sa + p * (a12 + a13 * ct));
  dvhatnum_dct = a14 + ct * (a15 + ct * (a16 + a17 * ct)) +
                 sa * (a18 + ct * (a19 + ct * (a20 + a21 * ct)) +
                       sqrtsa * (a22 + ct * (a23 + ct * (a24 + a25 * ct)))) +
                 p * (a26 + ct * (a27 + a28 * ct) + a29 * sa +
                      p * (a30 + a31 * ct + a32 * sa + a33 * p));
  dvhatden_dsa = b01 + ct * (b02 + b03 * ct) +
                 sqrtsa * (b04 + ct * (b05 + ct * (b06 + b07 * ct))) +
                 p * (b08 + b09 * ct + b10 * p);
  dvhatnum_dsa =
      b11 + ct * (b12 + ct * (b13 + ct * (b14 + b15 * ct))) +
      sqrtsa * (b16 + ct * (b17 + ct * (b18 + ct * (b19 + b20 * ct)))) +
      b21 * sa + p * (b22 + ct * (b23 + b24 * p));
  dvhatden_dp = c01 + ct * (c02 + c03 * ct) + sa * (c04 + c05 * ct) +
                p * (c06 + ct * (c07 + c08 * ct) + c09 * sa);
  dvhatnum_dp =
      c10 + ct * (c11 + ct * (c12 + c13 * ct)) + sa * (c14 + c15 * ct) +
      p * (c16 + ct * (c17 + c18 * ct + c19 * sa) + p * (c20 + c21 * ct));
  dvhatden_dpdct = c02 + 2e0 * c03 * ct + c05 * sa + p * (c07 + 2e0 * c08 * ct);
  dvhatnum_dpdct = c11 + ct * (2e0 * c12 + 3e0 * c13 * ct) + c15 * sa +
                   p * (c17 + ct * 2e0 * c18 + c19 * sa + c21 * p);
  dvhatden_dpdsa = c04 + c05 * ct + c09 * p;
  dvhatnum_dpdsa = c14 + c15 * ct + c19 * ct * p;
  p1a = dvhatnum_dpdct / v_hat_numerator;
  p1b = (dvhatnum_dct * dvhatden_dp) / (v_hat_numerator * v_hat_denominator);
  p1c = (dvhatnum_dp * dvhatden_dct) / (v_hat_numerator * v_hat_denominator);
  p1d = (dvhatden_dp * dvhatden_dct) / (v_hat_denominator * v_hat_denominator);
  p1e = dvhatden_dpdct / v_hat_denominator;
  part1 = p1a - p1b - p1c + 2e0 * p1d - p1e;
  factor2 =
      (v_hat_denominator * dvhatnum_dct - v_hat_numerator * dvhatden_dct) /
      (v_hat_denominator * dvhatnum_dsa - v_hat_numerator * dvhatden_dsa);
  p2a = dvhatnum_dpdsa / v_hat_numerator;
  p2b = (dvhatnum_dsa * dvhatden_dp) / (v_hat_numerator * v_hat_denominator);
  p2c = (dvhatnum_dp * dvhatden_dsa) / (v_hat_numerator * v_hat_denominator);
  p2d = (dvhatden_dp * dvhatden_dsa) / (v_hat_denominator * v_hat_denominator);
  p2e = dvhatden_dpdsa / v_hat_denominator;
  part2 = p2a - p2b - p2c + 2e0 * p2d - p2e;
  return ((part1 - factor2 * part2) * rec_db2pa);
}


x86 assembly (clang, -O0):
<gsw_thermobaric>:
push   %rbp
mov    %rsp,%rbp
sub    $0x4e0,%rsp
movsd  %xmm0,-0x8(%rbp)
movsd  %xmm1,-0x10(%rbp)
movsd  %xmm2,-0x18(%rbp)
movsd  0x2186(%rip),%xmm0
movsd  %xmm0,-0x20(%rbp)
movsd  0x20d9(%rip),%xmm0
movsd  %xmm0,-0x28(%rbp)
movsd  0x2164(%rip),%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  0x214f(%rip),%xmm0
movsd  %xmm0,-0x38(%rbp)
movsd  0x1ff2(%rip),%xmm0
movsd  %xmm0,-0x40(%rbp)
movsd  0x1fdd(%rip),%xmm0
movsd  %xmm0,-0x48(%rbp)
movsd  0x1fc8(%rip),%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  0x2113(%rip),%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  0x205e(%rip),%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  0x20f1(%rip),%xmm0
movsd  %xmm0,-0x68(%rbp)
movsd  0x20dc(%rip),%xmm0
movsd  %xmm0,-0x70(%rbp)
movsd  0x1ef7(%rip),%xmm0
movsd  %xmm0,-0x78(%rbp)
movsd  0x1ee2(%rip),%xmm0
movsd  %xmm0,-0x80(%rbp)
movsd  0x1ecd(%rip),%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
movsd  0x1eb5(%rip),%xmm0
movsd  %xmm0,-0x90(%rbp)
ff
movsd  0x1e9d(%rip),%xmm0
movsd  %xmm0,-0x98(%rbp)
ff
movsd  0x207d(%rip),%xmm0
movsd  %xmm0,-0xa0(%rbp)
ff
movsd  0x1fbd(%rip),%xmm0
movsd  %xmm0,-0xa8(%rbp)
ff
movsd  0x2055(%rip),%xmm0
movsd  %xmm0,-0xb0(%rbp)
ff
movsd  0x1ee5(%rip),%xmm0
movsd  %xmm0,-0xb8(%rbp)
ff
movsd  0x202d(%rip),%xmm0
movsd  %xmm0,-0xc0(%rbp)
ff
movsd  0x1f75(%rip),%xmm0
movsd  %xmm0,-0xc8(%rbp)
ff
movsd  0x2005(%rip),%xmm0
movsd  %xmm0,-0xd0(%rbp)
ff
movsd  0x1fed(%rip),%xmm0
movsd  %xmm0,-0xd8(%rbp)
ff
movsd  0x1fd5(%rip),%xmm0
movsd  %xmm0,-0xe0(%rbp)
ff
movsd  0x1e7d(%rip),%xmm0
movsd  %xmm0,-0xe8(%rbp)
ff
movsd  0x1e65(%rip),%xmm0
movsd  %xmm0,-0xf0(%rbp)
ff
movsd  0x1e4d(%rip),%xmm0
movsd  %xmm0,-0xf8(%rbp)
ff
movsd  0x1e35(%rip),%xmm0
movsd  %xmm0,-0x100(%rbp)
ff
movsd  0x1e1d(%rip),%xmm0
movsd  %xmm0,-0x108(%rbp)
ff
movsd  0x1f6d(%rip),%xmm0
movsd  %xmm0,-0x110(%rbp)
ff
movsd  0x1e9d(%rip),%xmm0
movsd  %xmm0,-0x118(%rbp)
ff
movsd  0x1f45(%rip),%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
movsd  0x1f2d(%rip),%xmm0
movsd  %xmm0,-0x128(%rbp)
ff
movsd  0x1f15(%rip),%xmm0
movsd  %xmm0,-0x130(%rbp)
ff
movsd  0x1efd(%rip),%xmm0
movsd  %xmm0,-0x138(%rbp)
ff
movsd  0x1d25(%rip),%xmm0
movsd  %xmm0,-0x140(%rbp)
ff
movsd  0x1d0d(%rip),%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  0x1cf5(%rip),%xmm0
movsd  %xmm0,-0x150(%rbp)
ff
movsd  0x1cdd(%rip),%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  0x1cc5(%rip),%xmm0
movsd  %xmm0,-0x160(%rbp)
ff
movsd  0x1cad(%rip),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
movsd  0x1e85(%rip),%xmm0
movsd  %xmm0,-0x170(%rbp)
ff
movsd  0x1dad(%rip),%xmm0
movsd  %xmm0,-0x178(%rbp)
ff
movsd  0x1e5d(%rip),%xmm0
movsd  %xmm0,-0x180(%rbp)
ff
movsd  0x1ce5(%rip),%xmm0
movsd  %xmm0,-0x188(%rbp)
ff
movsd  0x1e35(%rip),%xmm0
movsd  %xmm0,-0x190(%rbp)
ff
movsd  0x1d65(%rip),%xmm0
movsd  %xmm0,-0x198(%rbp)
ff
movsd  0x1e0d(%rip),%xmm0
movsd  %xmm0,-0x1a0(%rbp)
ff
movsd  0x1df5(%rip),%xmm0
movsd  %xmm0,-0x1a8(%rbp)
ff
movsd  0x1ddd(%rip),%xmm0
movsd  %xmm0,-0x1b0(%rbp)
ff
movsd  0x1d15(%rip),%xmm0
movsd  %xmm0,-0x1b8(%rbp)
ff
movsd  0x1db5(%rip),%xmm0
movsd  %xmm0,-0x1c0(%rbp)
ff
movsd  0x1d9d(%rip),%xmm0
movsd  %xmm0,-0x1c8(%rbp)
ff
movsd  0x1d85(%rip),%xmm0
movsd  %xmm0,-0x1d0(%rbp)
ff
movsd  0x1d6d(%rip),%xmm0
movsd  %xmm0,-0x1d8(%rbp)
ff
movsd  0x1c25(%rip),%xmm0
movsd  %xmm0,-0x1e0(%rbp)
ff
movsd  0x1d45(%rip),%xmm0
movsd  %xmm0,-0x1e8(%rbp)
ff
movsd  0x1bed(%rip),%xmm0
movsd  %xmm0,-0x1f0(%rbp)
ff
movsd  0x1d1d(%rip),%xmm0
movsd  %xmm0,-0x1f8(%rbp)
ff
movsd  0x1bb5(%rip),%xmm0
movsd  %xmm0,-0x200(%rbp)
ff
movsd  0x1cf5(%rip),%xmm0
movsd  %xmm0,-0x208(%rbp)
ff
movsd  0x1cdd(%rip),%xmm0
movsd  %xmm0,-0x210(%rbp)
ff
movsd  0x1cc5(%rip),%xmm0
movsd  %xmm0,-0x218(%rbp)
ff
movsd  0x1cad(%rip),%xmm0
movsd  %xmm0,-0x220(%rbp)
ff
movsd  0x1bf5(%rip),%xmm0
movsd  %xmm0,-0x228(%rbp)
ff
movsd  0x1c85(%rip),%xmm0
movsd  %xmm0,-0x230(%rbp)
ff
movsd  0x1c6d(%rip),%xmm0
movsd  %xmm0,-0x238(%rbp)
ff
movsd  0x1c55(%rip),%xmm0
movsd  %xmm0,-0x240(%rbp)
ff
movsd  0x1c3d(%rip),%xmm0
movsd  %xmm0,-0x248(%rbp)
ff
movsd  0x1c25(%rip),%xmm0
movsd  %xmm0,-0x250(%rbp)
ff
movsd  0x1c0d(%rip),%xmm0
movsd  %xmm0,-0x258(%rbp)
ff
movsd  0x1bf5(%rip),%xmm0
movsd  %xmm0,-0x260(%rbp)
ff
movsd  0x1acd(%rip),%xmm0
movsd  %xmm0,-0x268(%rbp)
ff
movsd  0x1bcd(%rip),%xmm0
movsd  %xmm0,-0x270(%rbp)
ff
movsd  0x1bb5(%rip),%xmm0
movsd  %xmm0,-0x278(%rbp)
ff
movsd  0x1a7d(%rip),%xmm0
movsd  %xmm0,-0x280(%rbp)
ff
movsd  0x1b8d(%rip),%xmm0
movsd  %xmm0,-0x288(%rbp)
ff
movsd  0x1a45(%rip),%xmm0
movsd  %xmm0,-0x290(%rbp)
ff
movsd  0x1ac5(%rip),%xmm0
movsd  %xmm0,-0x298(%rbp)
ff
movsd  0x1b55(%rip),%xmm0
movsd  %xmm0,-0x2a0(%rbp)
ff
movsd  0x1b3d(%rip),%xmm0
movsd  %xmm0,-0x2a8(%rbp)
ff
movsd  0x1b25(%rip),%xmm0
movsd  %xmm0,-0x2b0(%rbp)
ff
movsd  0x1b0d(%rip),%xmm0
movsd  %xmm0,-0x2b8(%rbp)
ff
movsd  0x1af5(%rip),%xmm0
movsd  %xmm0,-0x2c0(%rbp)
ff
movsd  0x1add(%rip),%xmm0
movsd  %xmm0,-0x2c8(%rbp)
ff
movsd  0x1ac5(%rip),%xmm0
movsd  %xmm0,-0x2d0(%rbp)
ff
movsd  0x1aad(%rip),%xmm0
movsd  %xmm0,-0x2d8(%rbp)
ff
movsd  0x1a15(%rip),%xmm0
movsd  %xmm0,-0x2e0(%rbp)
ff
movsd  0x19fd(%rip),%xmm0
movsd  %xmm0,-0x2e8(%rbp)
ff
movsd  0x1a75(%rip),%xmm0
movsd  %xmm0,-0x2f0(%rbp)
ff
movsd  0x1a5d(%rip),%xmm0
movsd  %xmm0,-0x2f8(%rbp)
ff
movsd  0x1a45(%rip),%xmm0
movsd  %xmm0,-0x300(%rbp)
ff
movsd  0x1a2d(%rip),%xmm0
movsd  %xmm0,-0x308(%rbp)
ff
movsd  0x1a15(%rip),%xmm0
movsd  %xmm0,-0x310(%rbp)
ff
movsd  0x19fd(%rip),%xmm0
movsd  %xmm0,-0x318(%rbp)
ff
movsd  0x19e5(%rip),%xmm0
movsd  %xmm0,-0x320(%rbp)
ff
movsd  0x19cd(%rip),%xmm0
movsd  %xmm0,-0x328(%rbp)
ff
movsd  0x19b5(%rip),%xmm0
movsd  %xmm0,-0x330(%rbp)
ff
movsd  0x199d(%rip),%xmm0
movsd  %xmm0,-0x338(%rbp)
ff
movsd  0x1985(%rip),%xmm0
movsd  %xmm0,-0x340(%rbp)
ff
movsd  0x196d(%rip),%xmm0
movsd  %xmm0,-0x348(%rbp)
ff
movsd  0x18e5(%rip),%xmm0
movsd  %xmm0,-0x350(%rbp)
ff
movsd  0x18cd(%rip),%xmm0
movsd  %xmm0,-0x358(%rbp)
ff
movsd  0x1935(%rip),%xmm0
movsd  %xmm0,-0x360(%rbp)
ff
movsd  0x191d(%rip),%xmm0
movsd  %xmm0,-0x368(%rbp)
ff
movsd  0x1905(%rip),%xmm0
movsd  %xmm0,-0x370(%rbp)
ff
movsd  0x18ed(%rip),%xmm0
movsd  %xmm0,-0x378(%rbp)
ff
movsd  0x18d5(%rip),%xmm0
movsd  %xmm0,-0x380(%rbp)
ff
movsd  0x18bd(%rip),%xmm0
movsd  %xmm0,-0x388(%rbp)
ff
movsd  0x18a5(%rip),%xmm0
movsd  %xmm0,-0x390(%rbp)
ff
movsd  0x188d(%rip),%xmm0
movsd  %xmm0,-0x398(%rbp)
ff
movsd  0x1875(%rip),%xmm0
movsd  %xmm0,-0x3a0(%rbp)
ff
movsd  0x185d(%rip),%xmm0
movsd  %xmm0,-0x3a8(%rbp)
ff
movsd  0x1845(%rip),%xmm0
movsd  %xmm0,-0x3b0(%rbp)
ff
movsd  0x182d(%rip),%xmm0
movsd  %xmm0,-0x3b8(%rbp)
ff
movsd  0x1815(%rip),%xmm0
movsd  %xmm0,-0x3c0(%rbp)
ff
movsd  0x17fd(%rip),%xmm0
movsd  %xmm0,-0x3c8(%rbp)
ff
movsd  0x17e5(%rip),%xmm0
movsd  %xmm0,-0x3d0(%rbp)
ff
movsd  0x17cd(%rip),%xmm0
movsd  %xmm0,-0x3d8(%rbp)
ff
movsd  0x17b5(%rip),%xmm0
movsd  %xmm0,-0x3e0(%rbp)
ff
movsd  0x179d(%rip),%xmm0
movsd  %xmm0,-0x3e8(%rbp)
ff
movsd  0x1785(%rip),%xmm0
movsd  %xmm0,-0x3f0(%rbp)
ff
movsd  0x176d(%rip),%xmm0
movsd  %xmm0,-0x3f8(%rbp)
ff
movsd  0x1755(%rip),%xmm0
movsd  %xmm0,-0x400(%rbp)
ff
movsd  0x173d(%rip),%xmm0
movsd  %xmm0,-0x408(%rbp)
ff
movsd  0x1725(%rip),%xmm0
movsd  %xmm0,-0x410(%rbp)
ff
movsd  -0x8(%rbp),%xmm0
call   1030 <sqrt@plt>
movsd  %xmm0,-0x418(%rbp)
ff
movsd  -0x20(%rbp),%xmm1
movsd  -0x10(%rbp),%xmm0
movsd  -0x28(%rbp),%xmm3
movsd  -0x10(%rbp),%xmm2
movsd  -0x30(%rbp),%xmm5
movsd  -0x38(%rbp),%xmm4
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x8(%rbp),%xmm1
movsd  -0x40(%rbp),%xmm2
movsd  -0x10(%rbp),%xmm3
movsd  -0x48(%rbp),%xmm5
movsd  -0x50(%rbp),%xmm4
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x418(%rbp),%xmm2
ff
movsd  -0x58(%rbp),%xmm5
movsd  -0x10(%rbp),%xmm4
movsd  -0x60(%rbp),%xmm7
movsd  -0x10(%rbp),%xmm6
movsd  -0x68(%rbp),%xmm9
movsd  -0x70(%rbp),%xmm8
movsd  -0x10(%rbp),%xmm10
mulsd  %xmm10,%xmm8
addsd  %xmm9,%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x18(%rbp),%xmm0
movsd  -0x78(%rbp),%xmm3
movsd  -0x10(%rbp),%xmm2
movsd  -0x80(%rbp),%xmm5
movsd  -0x88(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
movsd  -0x8(%rbp),%xmm3
movsd  -0x90(%rbp),%xmm5
ff
movsd  -0x98(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x18(%rbp),%xmm2
movsd  -0xa0(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm5
movsd  -0xa8(%rbp),%xmm7
ff
movsd  -0xb0(%rbp),%xmm6
ff
movsd  -0x10(%rbp),%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm5
addsd  %xmm4,%xmm5
movsd  -0xb8(%rbp),%xmm4
ff
movsd  -0x8(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x420(%rbp)
ff
movsd  -0xc0(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm0
movsd  -0xc8(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0xd0(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0xd8(%rbp),%xmm7
ff
movsd  -0xe0(%rbp),%xmm6
ff
movsd  -0x10(%rbp),%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x8(%rbp),%xmm1
movsd  -0xe8(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0xf0(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0xf8(%rbp),%xmm7
ff
movsd  -0x10(%rbp),%xmm6
movsd  -0x100(%rbp),%xmm9
ff ff
movsd  -0x108(%rbp),%xmm8
ff ff
movsd  -0x10(%rbp),%xmm10
mulsd  %xmm10,%xmm8
addsd  %xmm9,%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
movsd  -0x138(%rbp),%xmm3
ff
movsd  -0x8(%rbp),%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x418(%rbp),%xmm2
ff
movsd  -0x110(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x118(%rbp),%xmm7
ff
movsd  -0x10(%rbp),%xmm6
movsd  -0x120(%rbp),%xmm9
ff ff
movsd  -0x10(%rbp),%xmm8
movsd  -0x128(%rbp),%xmm11
ff ff
movsd  -0x130(%rbp),%xmm10
ff ff
movsd  -0x10(%rbp),%xmm12
mulsd  %xmm12,%xmm10
addsd  %xmm11,%xmm10
mulsd  %xmm10,%xmm8
addsd  %xmm9,%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x18(%rbp),%xmm0
movsd  -0x140(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x148(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x150(%rbp),%xmm7
ff
movsd  -0x158(%rbp),%xmm6
ff
movsd  -0x10(%rbp),%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
movsd  -0x8(%rbp),%xmm3
movsd  -0x160(%rbp),%xmm5
ff
movsd  -0x168(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x18(%rbp),%xmm2
movsd  -0x170(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm5
movsd  -0x178(%rbp),%xmm6
ff
movsd  -0x180(%rbp),%xmm7
ff
movsd  -0x10(%rbp),%xmm8
mulsd  %xmm8,%xmm7
addsd  %xmm6,%xmm7
movsd  -0x188(%rbp),%xmm6
ff
movsd  -0x8(%rbp),%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm5
addsd  %xmm4,%xmm5
movsd  -0x18(%rbp),%xmm4
movsd  -0x190(%rbp),%xmm7
ff
movsd  -0x198(%rbp),%xmm6
ff
movsd  -0x10(%rbp),%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x428(%rbp)
ff
movsd  -0x1a0(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm0
movsd  -0x1a8(%rbp),%xmm3
movsd  -0x1b0(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x8(%rbp),%xmm1
movsd  -0x1b8(%rbp),%xmm2
ff
movsd  -0x1c0(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x418(%rbp),%xmm2
ff
movsd  -0x1c8(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x1d0(%rbp),%xmm7
ff
movsd  -0x1d8(%rbp),%xmm6
ff
movsd  -0x10(%rbp),%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x18(%rbp),%xmm0
movsd  -0x1e0(%rbp),%xmm3
ff
movsd  -0x1e8(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
movsd  -0x1f0(%rbp),%xmm3
ff
movsd  -0x8(%rbp),%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x18(%rbp),%xmm2
movsd  -0x1f8(%rbp),%xmm5
ff
movsd  -0x200(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x430(%rbp)
ff
movsd  -0x208(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm0
movsd  -0x210(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x218(%rbp),%xmm5
ff
movsd  -0x220(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x8(%rbp),%xmm1
movsd  -0x228(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm3
movsd  -0x230(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x238(%rbp),%xmm7
ff
movsd  -0x240(%rbp),%xmm6
ff
movsd  -0x10(%rbp),%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x418(%rbp),%xmm2
ff
movsd  -0x248(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x250(%rbp),%xmm7
ff
movsd  -0x10(%rbp),%xmm6
movsd  -0x258(%rbp),%xmm9
ff ff
movsd  -0x260(%rbp),%xmm8
ff ff
movsd  -0x10(%rbp),%xmm10
mulsd  %xmm10,%xmm8
addsd  %xmm9,%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x18(%rbp),%xmm0
movsd  -0x268(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x270(%rbp),%xmm5
ff
movsd  -0x278(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
movsd  -0x280(%rbp),%xmm3
ff
movsd  -0x8(%rbp),%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x18(%rbp),%xmm2
movsd  -0x288(%rbp),%xmm5
ff
movsd  -0x290(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
movsd  -0x298(%rbp),%xmm5
ff
movsd  -0x8(%rbp),%xmm6
mulsd  %xmm6,%xmm5
addsd  %xmm4,%xmm5
movsd  -0x2a0(%rbp),%xmm4
ff
movsd  -0x18(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x438(%rbp)
ff
movsd  -0x2a8(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm0
movsd  -0x2b0(%rbp),%xmm3
ff
movsd  -0x2b8(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x418(%rbp),%xmm1
ff
movsd  -0x2c0(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x2c8(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x2d0(%rbp),%xmm7
movsd  -0x2d8(%rbp),%xmm6
movsd  -0x10(%rbp),%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x18(%rbp),%xmm0
movsd  -0x2e0(%rbp),%xmm2
ff
movsd  -0x2e8(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x2f0(%rbp),%xmm2
ff
movsd  -0x18(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x450(%rbp)
ff
movsd  -0x2f8(%rbp),%xmm0
ff
movsd  -0x10(%rbp),%xmm1
movsd  -0x300(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x308(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x310(%rbp),%xmm7
ff
movsd  -0x318(%rbp),%xmm6
ff
movsd  -0x10(%rbp),%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x418(%rbp),%xmm0
ff
movsd  -0x320(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x328(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x330(%rbp),%xmm7
movsd  -0x10(%rbp),%xmm6
movsd  -0x338(%rbp),%xmm9
ff ff
movsd  -0x340(%rbp),%xmm8
ff ff
movsd  -0x10(%rbp),%xmm10
mulsd  %xmm10,%xmm8
addsd  %xmm9,%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x348(%rbp),%xmm1
ff
movsd  -0x8(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x18(%rbp),%xmm0
movsd  -0x350(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x358(%rbp),%xmm5
ff
movsd  -0x360(%rbp),%xmm4
ff
movsd  -0x18(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x458(%rbp)
ff
movsd  -0x368(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm0
movsd  -0x370(%rbp),%xmm3
ff
movsd  -0x378(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x8(%rbp),%xmm1
movsd  -0x380(%rbp),%xmm3
ff
movsd  -0x388(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x18(%rbp),%xmm0
movsd  -0x390(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm3
movsd  -0x398(%rbp),%xmm5
ff
movsd  -0x3a0(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x3a8(%rbp),%xmm2
ff
movsd  -0x8(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x440(%rbp)
ff
movsd  -0x3b0(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm0
movsd  -0x3b8(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x3c0(%rbp),%xmm5
ff
movsd  -0x3c8(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x8(%rbp),%xmm1
movsd  -0x3d0(%rbp),%xmm3
ff
movsd  -0x3d8(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x18(%rbp),%xmm0
movsd  -0x3e0(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm3
movsd  -0x3e8(%rbp),%xmm4
ff
movsd  -0x3f0(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm5
addsd  %xmm4,%xmm5
movsd  -0x3f8(%rbp),%xmm4
ff
movsd  -0x8(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x18(%rbp),%xmm2
movsd  -0x400(%rbp),%xmm5
ff
movsd  -0x408(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x448(%rbp)
ff
movsd  -0x370(%rbp),%xmm1
ff
movsd  0xc9c(%rip),%xmm0
mulsd  -0x378(%rbp),%xmm0
ff
movsd  -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x388(%rbp),%xmm1
ff
movsd  -0x8(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x18(%rbp),%xmm0
movsd  -0x398(%rbp),%xmm3
ff
movsd  0xc5d(%rip),%xmm2
mulsd  -0x3a0(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x460(%rbp)
ff
movsd  -0x3b8(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm0
movsd  -0x3c0(%rbp),%xmm2
ff
movsd  0xc23(%rip),%xmm3
mulsd  -0x3c8(%rbp),%xmm3
ff
mulsd  -0x10(%rbp),%xmm3
addsd  %xmm2,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x3d8(%rbp),%xmm1
ff
movsd  -0x8(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x18(%rbp),%xmm0
movsd  -0x3e8(%rbp),%xmm3
ff
movsd  0xbd4(%rip),%xmm2
mulsd  -0x10(%rbp),%xmm2
movsd  -0x3f0(%rbp),%xmm4
ff
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
movsd  -0x3f8(%rbp),%xmm3
ff
movsd  -0x8(%rbp),%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x408(%rbp),%xmm2
ff
movsd  -0x18(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x468(%rbp)
ff
movsd  -0x380(%rbp),%xmm0
ff
movsd  -0x388(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3a8(%rbp),%xmm0
ff
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x470(%rbp)
ff
movsd  -0x3d0(%rbp),%xmm0
ff
movsd  -0x3d8(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3f8(%rbp),%xmm0
ff
mulsd  -0x10(%rbp),%xmm0
movsd  -0x18(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x478(%rbp)
ff
movsd  -0x468(%rbp),%xmm0
ff
divsd  -0x428(%rbp),%xmm0
ff
movsd  %xmm0,-0x480(%rbp)
ff
movsd  -0x438(%rbp),%xmm0
ff
mulsd  -0x440(%rbp),%xmm0
ff
movsd  -0x428(%rbp),%xmm1
ff
mulsd  -0x420(%rbp),%xmm1
ff
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x488(%rbp)
ff
movsd  -0x448(%rbp),%xmm0
ff
mulsd  -0x430(%rbp),%xmm0
ff
movsd  -0x428(%rbp),%xmm1
ff
mulsd  -0x420(%rbp),%xmm1
ff
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x490(%rbp)
ff
movsd  -0x440(%rbp),%xmm0
ff
mulsd  -0x430(%rbp),%xmm0
ff
movsd  -0x420(%rbp),%xmm1
ff
mulsd  -0x420(%rbp),%xmm1
ff
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x498(%rbp)
ff
movsd  -0x460(%rbp),%xmm0
ff
divsd  -0x420(%rbp),%xmm0
ff
movsd  %xmm0,-0x4a0(%rbp)
ff
movsd  -0x480(%rbp),%xmm1
ff
subsd  -0x488(%rbp),%xmm1
ff
subsd  -0x490(%rbp),%xmm1
ff
movsd  -0x498(%rbp),%xmm0
ff
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x4a0(%rbp),%xmm0
ff
movsd  %xmm0,-0x4a8(%rbp)
ff
movsd  -0x420(%rbp),%xmm0
ff
movsd  -0x438(%rbp),%xmm2
ff
movsd  -0x428(%rbp),%xmm1
ff
mulsd  -0x430(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x420(%rbp),%xmm1
ff
movsd  -0x458(%rbp),%xmm3
ff
movsd  -0x428(%rbp),%xmm2
ff
mulsd  -0x450(%rbp),%xmm2
ff
movq   %xmm2,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm2
mulsd  %xmm3,%xmm1
addsd  %xmm2,%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x4b0(%rbp)
ff
movsd  -0x478(%rbp),%xmm0
ff
divsd  -0x428(%rbp),%xmm0
ff
movsd  %xmm0,-0x4b8(%rbp)
ff
movsd  -0x458(%rbp),%xmm0
ff
mulsd  -0x440(%rbp),%xmm0
ff
movsd  -0x428(%rbp),%xmm1
ff
mulsd  -0x420(%rbp),%xmm1
ff
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x4c0(%rbp)
ff
movsd  -0x448(%rbp),%xmm0
ff
mulsd  -0x450(%rbp),%xmm0
ff
movsd  -0x428(%rbp),%xmm1
ff
mulsd  -0x420(%rbp),%xmm1
ff
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x4c8(%rbp)
ff
movsd  -0x440(%rbp),%xmm0
ff
mulsd  -0x450(%rbp),%xmm0
ff
movsd  -0x420(%rbp),%xmm1
ff
mulsd  -0x420(%rbp),%xmm1
ff
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x4d0(%rbp)
ff
movsd  -0x470(%rbp),%xmm0
ff
divsd  -0x420(%rbp),%xmm0
ff
movsd  %xmm0,-0x4d8(%rbp)
ff
movsd  -0x4b8(%rbp),%xmm1
ff
subsd  -0x4c0(%rbp),%xmm1
ff
subsd  -0x4c8(%rbp),%xmm1
ff
movsd  -0x4d0(%rbp),%xmm0
ff
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x4d8(%rbp),%xmm0
ff
movsd  %xmm0,-0x4e0(%rbp)
ff
movsd  -0x4a8(%rbp),%xmm1
ff
movsd  -0x4b0(%rbp),%xmm0
ff
movsd  -0x4e0(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mulsd  -0x410(%rbp),%xmm0
ff
add    $0x4e0,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<gsw_thermobaric>:
sub    $0x98,%rsp
movaps %xmm2,0x70(%rsp)
movaps %xmm1,0x80(%rsp)
movapd %xmm0,%xmm13
xorpd  %xmm0,%xmm0
ucomisd %xmm0,%xmm13
jb     113e <gsw_thermobaric+0x2e>
xorps  %xmm0,%xmm0
sqrtsd %xmm13,%xmm0
jmp    1154 <gsw_thermobaric+0x44>
movapd %xmm13,%xmm0
movapd %xmm13,(%rsp)
call   1030 <sqrt@plt>
movapd (%rsp),%xmm13
movsd  0xea4(%rip),%xmm6
movapd 0x80(%rsp),%xmm10
mulsd  %xmm10,%xmm6
addsd  0xe95(%rip),%xmm6
mulsd  %xmm10,%xmm6
addsd  0xe90(%rip),%xmm6
mulsd  %xmm10,%xmm6
addsd  0xe8b(%rip),%xmm6
movsd  0xe8b(%rip),%xmm1
mulsd  %xmm10,%xmm1
addsd  0xe86(%rip),%xmm1
mulsd  %xmm10,%xmm1
movsd  0xe80(%rip),%xmm8
addsd  %xmm8,%xmm1
mulsd  %xmm10,%xmm1
addsd  0xe76(%rip),%xmm1
movapd %xmm10,%xmm14
unpcklpd %xmm10,%xmm14
movapd 0x105c(%rip),%xmm2
mulpd  %xmm14,%xmm2
addpd  0x105f(%rip),%xmm2
mulpd  %xmm14,%xmm2
addpd  0x1062(%rip),%xmm2
movapd %xmm2,%xmm3
unpckhpd %xmm2,%xmm3
mulsd  %xmm0,%xmm1
addsd  %xmm3,%xmm1
movapd %xmm0,%xmm4
movapd %xmm10,%xmm5
unpcklpd %xmm13,%xmm5
movapd %xmm5,(%rsp)
movapd 0x1047(%rip),%xmm3
unpcklpd %xmm1,%xmm3
movapd 0x104b(%rip),%xmm1
unpcklpd %xmm6,%xmm1
mulpd  %xmm5,%xmm3
movsd  0xe0b(%rip),%xmm0
mulsd  %xmm10,%xmm0
addsd  0xe06(%rip),%xmm0
addpd  %xmm1,%xmm3
movapd %xmm3,0x50(%rsp)
mulsd  %xmm10,%xmm0
addsd  0xdf7(%rip),%xmm0
movsd  0xdff(%rip),%xmm1
mulsd  %xmm10,%xmm1
addsd  0xdfa(%rip),%xmm1
movsd  0xde2(%rip),%xmm5
mulsd  %xmm10,%xmm1
addsd  0xded(%rip),%xmm1
mulsd  %xmm13,%xmm5
mulsd  %xmm10,%xmm1
addsd  0xde3(%rip),%xmm1
addsd  %xmm0,%xmm5
movapd %xmm5,0x60(%rsp)
movapd %xmm13,%xmm0
unpcklpd %xmm4,%xmm0
movapd %xmm3,%xmm5
unpcklpd %xmm1,%xmm5
mulpd  %xmm0,%xmm5
movsd  0xdc4(%rip),%xmm7
mulsd  %xmm10,%xmm7
addsd  0xdbf(%rip),%xmm7
addpd  %xmm2,%xmm5
movapd %xmm5,0x40(%rsp)
mulsd  %xmm10,%xmm7
addsd  0xdb0(%rip),%xmm7
mulsd  %xmm10,%xmm7
movsd  0xdab(%rip),%xmm1
addsd  %xmm1,%xmm7
mulsd  %xmm10,%xmm7
addsd  0xda2(%rip),%xmm7
movsd  0xda2(%rip),%xmm0
mulsd  %xmm13,%xmm0
movsd  0xd9d(%rip),%xmm2
mulsd  %xmm10,%xmm2
addsd  0xd98(%rip),%xmm2
addsd  %xmm7,%xmm0
mulsd  %xmm10,%xmm2
addsd  0xd8f(%rip),%xmm2
mulsd  %xmm10,%xmm2
movsd  0xd89(%rip),%xmm9
addsd  %xmm9,%xmm2
mulsd  %xmm10,%xmm2
addsd  0xd7f(%rip),%xmm2
mulsd  %xmm4,%xmm2
addsd  %xmm0,%xmm2
movsd  0xdc7(%rip),%xmm0
mulsd  %xmm10,%xmm0
addsd  0xdc2(%rip),%xmm0
mulsd  %xmm10,%xmm0
addsd  %xmm8,%xmm0
movsd  0xdb7(%rip),%xmm15
movapd %xmm15,%xmm5
unpcklpd %xmm0,%xmm5
movapd %xmm10,%xmm0
unpcklpd %xmm4,%xmm0
movapd %xmm4,%xmm8
mulpd  %xmm0,%xmm5
movsd  0xd74(%rip),%xmm0
mulsd  %xmm10,%xmm0
addsd  0xd6f(%rip),%xmm0
movsd  0xd87(%rip),%xmm4
unpcklpd %xmm0,%xmm4
movsd  0xd13(%rip),%xmm3
mulsd  %xmm10,%xmm3
addsd  0xd0e(%rip),%xmm3
addpd  %xmm5,%xmm4
movapd %xmm4,0x30(%rsp)
shufpd $0x2,0xe9b(%rip),%xmm3
movapd 0xf13(%rip),%xmm0
unpcklpd %xmm2,%xmm0
mulpd  %xmm14,%xmm3
addpd  0xe92(%rip),%xmm3
mulpd  %xmm14,%xmm3
addpd  0xe95(%rip),%xmm3
movapd %xmm13,%xmm5
unpcklpd %xmm13,%xmm5
mulpd  %xmm5,%xmm0
mulpd  %xmm4,%xmm5
addpd  %xmm3,%xmm5
movsd  0xd4f(%rip),%xmm2
mulsd  %xmm10,%xmm2
addsd  0xd4a(%rip),%xmm2
mulsd  %xmm10,%xmm2
addsd  0xd45(%rip),%xmm2
mulsd  %xmm10,%xmm2
addsd  %xmm1,%xmm2
movsd  0xd04(%rip),%xmm3
mulsd  %xmm10,%xmm3
addsd  0xcff(%rip),%xmm3
movsd  0xd27(%rip),%xmm1
mulsd  %xmm10,%xmm1
addsd  0xd22(%rip),%xmm1
mulsd  %xmm10,%xmm1
addsd  0xd1d(%rip),%xmm1
mulsd  %xmm10,%xmm1
addsd  %xmm9,%xmm1
mulsd  %xmm10,%xmm3
addsd  0xcce(%rip),%xmm3
mulsd  %xmm10,%xmm3
addsd  0xcc9(%rip),%xmm3
mulsd  %xmm8,%xmm1
addsd  %xmm2,%xmm1
mulsd  %xmm13,%xmm1
addsd  %xmm3,%xmm1
movsd  0xc27(%rip),%xmm4
mulsd  %xmm10,%xmm4
movsd  0xc22(%rip),%xmm6
addsd  %xmm6,%xmm4
movsd  0xc1e(%rip),%xmm2
mulsd  %xmm13,%xmm2
addsd  %xmm2,%xmm4
movapd %xmm10,%xmm3
mulsd  0xcd0(%rip),%xmm3
addsd  %xmm3,%xmm6
addsd  %xmm2,%xmm6
movsd  0xc08(%rip),%xmm2
movapd %xmm10,%xmm9
mulsd  %xmm2,%xmm9
movapd 0x70(%rsp),%xmm12
mulsd  %xmm12,%xmm2
addsd  %xmm6,%xmm2
movsd  0xc85(%rip),%xmm11
mulsd  %xmm10,%xmm11
addsd  0xc7f(%rip),%xmm11
mulsd  %xmm10,%xmm11
addsd  0xc79(%rip),%xmm11
movapd %xmm13,%xmm6
mulsd  %xmm15,%xmm6
movapd %xmm6,0x10(%rsp)
addsd  %xmm6,%xmm11
mulsd  %xmm12,%xmm2
addsd  %xmm11,%xmm2
mulsd  %xmm12,%xmm2
movsd  0xc5c(%rip),%xmm11
mulsd  %xmm10,%xmm11
addsd  0xc56(%rip),%xmm11
shufpd $0x2,0xd2c(%rip),%xmm11
addsd  %xmm1,%xmm2
mulpd  %xmm14,%xmm11
addpd  0xd2a(%rip),%xmm11
mulpd  %xmm14,%xmm11
addpd  0xd2c(%rip),%xmm11
mulpd  %xmm14,%xmm11
addpd  0xd2e(%rip),%xmm11
unpcklpd %xmm10,%xmm8
mulpd  %xmm11,%xmm8
shufpd $0x2,0xd2b(%rip),%xmm7
addpd  %xmm8,%xmm7
addpd  %xmm7,%xmm0
addsd  0xb39(%rip),%xmm9
movapd 0xd31(%rip),%xmm7
unpcklpd %xmm9,%xmm7
mulsd  %xmm10,%xmm4
addsd  0xb0f(%rip),%xmm4
unpcklpd %xmm4,%xmm15
movapd %xmm12,%xmm1
unpcklpd %xmm12,%xmm1
mulpd  %xmm1,%xmm7
addpd  %xmm15,%xmm7
movapd %xmm10,%xmm4
unpcklpd %xmm12,%xmm4
mulpd  %xmm7,%xmm4
movsd  0xb21(%rip),%xmm7
unpcklpd %xmm5,%xmm7
addpd  %xmm4,%xmm7
mulpd  %xmm1,%xmm7
addpd  %xmm0,%xmm7
movapd %xmm7,0x20(%rsp)
movsd  0xb9b(%rip),%xmm0
mulsd  %xmm10,%xmm0
addsd  0xb96(%rip),%xmm0
mulsd  %xmm10,%xmm0
addsd  0xb91(%rip),%xmm0
movapd %xmm13,%xmm4
unpcklpd %xmm12,%xmm4
movapd 0x50(%rsp),%xmm11
unpcklpd %xmm11,%xmm0
mulpd  0xcab(%rip),%xmm4
addpd  %xmm0,%xmm4
movapd 0x60(%rsp),%xmm8
mulsd  %xmm12,%xmm8
movapd 0x40(%rsp),%xmm0
addsd  %xmm0,%xmm8
mulpd  %xmm1,%xmm4
addpd  %xmm0,%xmm4
movsd  0xaa8(%rip),%xmm0
mulsd  %xmm10,%xmm0
movsd  0xaa2(%rip),%xmm9
addsd  %xmm9,%xmm0
movapd 0xc85(%rip),%xmm7
unpcklpd %xmm0,%xmm7
movsd  0xb28(%rip),%xmm15
addsd  %xmm15,%xmm3
movsd  0xb23(%rip),%xmm6
movapd %xmm13,%xmm0
mulsd  %xmm6,%xmm0
addsd  %xmm0,%xmm3
shufpd $0x2,0xc45(%rip),%xmm3
mulpd  (%rsp),%xmm3
addpd  %xmm7,%xmm3
mulpd  0xc53(%rip),%xmm14
addpd  0xc5a(%rip),%xmm14
mulpd  %xmm1,%xmm14
addpd  %xmm3,%xmm14
mulpd  %xmm1,%xmm14
addpd  %xmm5,%xmm14
movsd  0xade(%rip),%xmm3
mulsd  %xmm10,%xmm3
mulsd  0xad8(%rip),%xmm13
addsd  %xmm9,%xmm3
addsd  %xmm3,%xmm13
movsd  0xacd(%rip),%xmm9
mulsd  %xmm10,%xmm9
addsd  0xa8f(%rip),%xmm9
mulsd  %xmm12,%xmm9
addsd  %xmm13,%xmm9
movsd  0xab5(%rip),%xmm3
mulsd  %xmm10,%xmm3
addsd  0xa40(%rip),%xmm3
mulsd  %xmm10,%xmm3
addsd  0xa3b(%rip),%xmm3
addsd  0x10(%rsp),%xmm3
movapd %xmm10,%xmm5
addsd  %xmm10,%xmm5
mulsd  0xa2b(%rip),%xmm5
addsd  %xmm15,%xmm5
addsd  %xmm0,%xmm5
movsd  0xa7a(%rip),%xmm7
mulsd  %xmm12,%xmm7
addsd  %xmm5,%xmm7
mulsd  %xmm12,%xmm7
addsd  %xmm3,%xmm7
movapd 0xbb0(%rip),%xmm3
unpcklpd %xmm8,%xmm3
mulpd  %xmm1,%xmm3
addpd  %xmm11,%xmm3
mulsd  %xmm6,%xmm10
mulsd  %xmm12,%xmm10
addsd  0x30(%rsp),%xmm10
movapd %xmm3,%xmm13
movsd  %xmm4,%xmm13
movapd %xmm14,%xmm12
unpckhpd %xmm14,%xmm12
movapd %xmm14,%xmm11
mulsd  %xmm12,%xmm11
movapd 0x20(%rsp),%xmm6
movapd %xmm6,%xmm8
unpckhpd %xmm6,%xmm8
movapd %xmm4,%xmm0
mulsd  %xmm12,%xmm0
mulsd  %xmm8,%xmm12
movapd %xmm4,%xmm1
unpckhpd %xmm4,%xmm1
mulsd  %xmm1,%xmm8
mulsd  %xmm1,%xmm14
mulsd  %xmm4,%xmm1
mulsd  %xmm2,%xmm4
mulpd  %xmm6,%xmm13
movapd %xmm13,%xmm15
unpckhpd %xmm13,%xmm15
divsd  %xmm15,%xmm4
unpcklpd %xmm11,%xmm7
movapd %xmm6,%xmm5
movapd %xmm6,%xmm11
unpckhpd %xmm13,%xmm5
divpd  %xmm5,%xmm7
movapd %xmm7,%xmm6
subsd  %xmm4,%xmm6
unpckhpd %xmm7,%xmm7
subsd  %xmm7,%xmm6
movapd %xmm3,%xmm4
unpckhpd %xmm3,%xmm4
divsd  %xmm4,%xmm9
mulsd  %xmm4,%xmm2
movapd %xmm11,%xmm7
mulsd  %xmm4,%xmm7
divsd  %xmm4,%xmm3
mulsd  %xmm4,%xmm4
divsd  %xmm4,%xmm0
addsd  %xmm0,%xmm0
addsd  %xmm6,%xmm0
subsd  %xmm9,%xmm0
subsd  %xmm12,%xmm2
subsd  %xmm8,%xmm7
divsd  %xmm7,%xmm2
divsd  %xmm15,%xmm13
unpcklpd %xmm14,%xmm10
divpd  %xmm5,%xmm10
divsd  %xmm4,%xmm1
movapd %xmm10,%xmm4
subsd  %xmm13,%xmm4
unpckhpd %xmm10,%xmm10
subsd  %xmm10,%xmm4
addsd  %xmm1,%xmm1
addsd  %xmm4,%xmm1
subsd  %xmm3,%xmm1
mulsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
mulsd  0x934(%rip),%xmm0
add    $0x98,%rsp
ret

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

LLVM IR (-O2):
define double @gsw_thermobaric(double %0, double %1, double %2) {
%4 = tail call double @sqrt(double %0)
%5 = tail call double @llvm.fmuladd.f64(double %1, double 0x3F535CDA0AA5141F, double 0xBFA01DD4BE07158E)
%6 = tail call double @llvm.fmuladd.f64(double %1, double %5, double 0x4006B832E6480B06)
%7 = tail call double @llvm.fmuladd.f64(double %1, double %6, double 0x408F3EBC998D192F)
%8 = tail call double @llvm.fmuladd.f64(double %1, double 0x3E86144FEF843373, double 0xBEEDED10CC84A6D6)
%9 = tail call double @llvm.fmuladd.f64(double %1, double %8, double 0x3F40B259AA6BB2BF)
%10 = tail call double @llvm.fmuladd.f64(double %1, double %9, double 0xBFA46C3AB1582DFC)
%11 = insertelement <2 x double> poison, double %1, i64 0
%12 = shufflevector <2 x double> %11, <2 x double> poison, <2 x i32> zeroinitializer
%13 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %12, <2 x double> <double 0x3ECF41A20BDDB36E, double 0x3F2E830001452CFC>, <2 x double> <double 0xBF3684CD73B033D1, double 0xBF9E94ED844FA0F2>)
%14 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %12, <2 x double> %13, <2 x double> <double 0xBF96DE61E08152B8, double 0xC01ACAC0CAF432E4>)
%15 = extractelement <2 x double> %14, i64 1
%16 = tail call double @llvm.fmuladd.f64(double %4, double %10, double %15)
%17 = insertelement <2 x double> %11, double %0, i64 1
%18 = insertelement <2 x double> <double 0x3EA713287F3E0D0D, double poison>, double %16, i64 1
%19 = insertelement <2 x double> <double 0xBF27AE9496D640EA, double poison>, double %7, i64 1
%20 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %17, <2 x double> %18, <2 x double> %19)
%21 = tail call double @llvm.fmuladd.f64(double %1, double 0xBDA757D23461E618, double 0xBE55599498FA7240)
%22 = tail call double @llvm.fmuladd.f64(double %1, double %21, double 0xBE94B77B40758AB4)
%23 = tail call double @llvm.fmuladd.f64(double %0, double 0x3DE550DC0324AE3D, double %22)
%24 = tail call double @llvm.fmuladd.f64(double %1, double 0x3E908F3BF3A32697, double 0xBEF671CC99637D1F)
%25 = tail call double @llvm.fmuladd.f64(double %1, double %24, double 0x3F490B867FA18C1F)
%26 = tail call double @llvm.fmuladd.f64(double %1, double %25, double 0xBFAEA2580A0444FA)
%27 = insertelement <2 x double> poison, double %0, i64 0
%28 = insertelement <2 x double> %27, double %4, i64 1
%29 = insertelement <2 x double> %20, double %26, i64 1
%30 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %28, <2 x double> %29, <2 x double> %14)
%31 = extractelement <2 x double> %30, i64 0
%32 = tail call double @llvm.fmuladd.f64(double %2, double %23, double %31)
%33 = tail call double @llvm.fmuladd.f64(double %1, double 0xBDB3E9ED19245025, double 0x3E105E675DDF54DA)
%34 = tail call double @llvm.fmuladd.f64(double %1, double %33, double 0x3E80F36B6915609B)
%35 = tail call double @llvm.fmuladd.f64(double %1, double %34, double 0xBEFCFC614ABDE6BC)
%36 = tail call double @llvm.fmuladd.f64(double %1, double %35, double 0xBF7ECECF594A4D0F)
%37 = tail call double @llvm.fmuladd.f64(double %0, double 0x3ED6BAF523B168F6, double %36)
%38 = tail call double @llvm.fmuladd.f64(double %1, double 0x3D87954B5454878B, double 0xBDC97A08262FF761)
%39 = tail call double @llvm.fmuladd.f64(double %1, double %38, double 0xBE407A356B462757)
%40 = tail call double @llvm.fmuladd.f64(double %1, double %39, double 0x3E998309C9A5AF2D)
%41 = tail call double @llvm.fmuladd.f64(double %1, double %40, double 0xBF0151A0492353E4)
%42 = tail call double @llvm.fmuladd.f64(double %4, double %41, double %37)
%43 = tail call double @llvm.fmuladd.f64(double %1, double 0xBD80FC412ACF34B7, double 0x3E2B69FE4FF2D058)
%44 = tail call double @llvm.fmuladd.f64(double %1, double 0xBD14FEFF084CF710, double 0xBDB55949A24CF361)
%45 = tail call double @llvm.fmuladd.f64(double %0, double 0x3D09359B5FDCD33E, double %44)
%46 = tail call double @llvm.fmuladd.f64(double %1, double %45, double 0xBDDEC25813BB665A)
%47 = tail call double @llvm.fmuladd.f64(double %1, double 0x3C9175F16D32352C, double 0xBCD5A05D6377C5EB)
%48 = insertelement <2 x double> <double poison, double 0x3F6D0B470FF79E2F>, double %43, i64 0
%49 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %12, <2 x double> %48, <2 x double> <double 0xBE958F74D806A8A4, double 0xBFB01DD4BE07158F>)
%50 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %12, <2 x double> %49, <2 x double> <double 0xBEFCC0FF745ACC9B, double 0x4006B832E6480B06>)
%51 = tail call double @llvm.fmuladd.f64(double %1, double 0x3F3E830001452CFC, double 0xBF9E94ED844FA0F2)
%52 = tail call double @llvm.fmuladd.f64(double %1, double 0x3EA08F3BF3A32698, double 0xBEFDED10CC84A6D3)
%53 = tail call double @llvm.fmuladd.f64(double %1, double %52, double 0x3F40B259AA6BB2BF)
%54 = insertelement <2 x double> %11, double %4, i64 1
%55 = insertelement <2 x double> <double 0x3E0557A0F47894E8, double poison>, double %53, i64 1
%56 = insertelement <2 x double> <double 0xBE7DAA2C37AA778F, double poison>, double %51, i64 1
%57 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %54, <2 x double> %55, <2 x double> %56)
%58 = shufflevector <2 x double> %27, <2 x double> poison, <2 x i32> zeroinitializer
%59 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %58, <2 x double> %57, <2 x double> %50)
%60 = tail call double @llvm.fmuladd.f64(double %1, double 0x3EDF41A20BDDB36F, double 0xBF3684CD73B033D1)
%61 = tail call double @llvm.fmuladd.f64(double %1, double 0x3E272BCFD629563F, double 0x3ECC2C68EE56B9E6)
%62 = tail call double @llvm.fmuladd.f64(double %1, double %61, double 0xBF08A32DF0E2C663)
%63 = tail call double @llvm.fmuladd.f64(double %1, double %62, double 0x3F66BD8ADC91CDB6)
%64 = tail call double @llvm.fmuladd.f64(double %1, double 0xBDD3E9ED19245025, double 0x3E288D9B0CCEFF48)
%65 = tail call double @llvm.fmuladd.f64(double %1, double %64, double 0x3E90F36B69156099)
%66 = tail call double @llvm.fmuladd.f64(double %1, double %65, double 0xBEFCFC614ABDE6BC)
%67 = tail call double @llvm.fmuladd.f64(double %1, double 0x3DA7954B54548789, double 0xBDE31B861CA3F988)
%68 = tail call double @llvm.fmuladd.f64(double %1, double %67, double 0xBE507A356B462758)
%69 = tail call double @llvm.fmuladd.f64(double %1, double %68, double 0x3E998309C9A5AF2D)
%70 = tail call double @llvm.fmuladd.f64(double %4, double %69, double %66)
%71 = tail call double @llvm.fmuladd.f64(double %0, double %70, double %63)
%72 = tail call double @llvm.fmuladd.f64(double %1, double 0xBD997A61C036CF14, double 0x3E3B69FE4FF2D058)
%73 = tail call double @llvm.fmuladd.f64(double %1, double %72, double 0xBE958F74D806A8A4)
%74 = tail call double @llvm.fmuladd.f64(double %0, double 0x3E0557A0F47894E8, double %73)
%75 = tail call double @llvm.fmuladd.f64(double %1, double 0xBD24FEFF084CF711, double 0xBDB55949A24CF361)
%76 = tail call double @llvm.fmuladd.f64(double %0, double 0x3D09359B5FDCD33E, double %75)
%77 = tail call double @llvm.fmuladd.f64(double %2, double 0x3C9175F16D32352C, double %76)
%78 = tail call double @llvm.fmuladd.f64(double %2, double %77, double %74)
%79 = tail call double @llvm.fmuladd.f64(double %2, double %78, double %71)
%80 = tail call double @llvm.fmuladd.f64(double %1, double 0x3D91AFF87F3F65A9, double 0xBDD31B861CA3F989)
%81 = insertelement <2 x double> <double poison, double 0x3E072BCFD6295640>, double %80, i64 0
%82 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %12, <2 x double> %81, <2 x double> <double 0xBE48B75020E93B06, double 0x3EB2C845F439D142>)
%83 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %12, <2 x double> %82, <2 x double> <double 0x3EA32247573C4361, double 0xBEF8A32DF0E2C663>)
%84 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %12, <2 x double> %83, <2 x double> <double 0xBF09FA706DB4FDD7, double 0x3F66BD8ADC91CDB6>)
%85 = insertelement <2 x double> poison, double %1, i64 1
%86 = insertelement <2 x double> %85, double %4, i64 0
%87 = insertelement <2 x double> <double poison, double 1.000000e+00>, double %36, i64 0
%88 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %86, <2 x double> %84, <2 x double> %87)
%89 = insertelement <2 x double> <double 0x3EE6BAF523B168F6, double poison>, double %42, i64 1
%90 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %58, <2 x double> %89, <2 x double> %88)
%91 = insertelement <2 x double> poison, double %2, i64 0
%92 = shufflevector <2 x double> %91, <2 x double> poison, <2 x i32> zeroinitializer
%93 = insertelement <2 x double> <double 0x3D09359B5FDCD33E, double poison>, double %47, i64 1
%94 = insertelement <2 x double> <double 0x3E0557A0F47894E8, double poison>, double %46, i64 1
%95 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %92, <2 x double> %93, <2 x double> %94)
%96 = insertelement <2 x double> %11, double %2, i64 1
%97 = shufflevector <2 x double> <double 0xBE7DAA2C37AA778F, double poison>, <2 x double> %59, <2 x i32> <i32 0, i32 2>
%98 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %96, <2 x double> %95, <2 x double> %97)
%99 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %92, <2 x double> %98, <2 x double> %90)
%100 = tail call double @llvm.fmuladd.f64(double %1, double 0xBDB757D23461E618, double 0xBE65599498FA7240)
%101 = tail call double @llvm.fmuladd.f64(double %1, double %100, double 0xBEA4B77B40758AB4)
%102 = insertelement <2 x double> %27, double %2, i64 1
%103 = insertelement <2 x double> poison, double %101, i64 0
%104 = shufflevector <2 x double> %103, <2 x double> %20, <2 x i32> <i32 0, i32 2>
%105 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %102, <2 x double> <double 0x3DF550DC0324AE3D, double 0x3DE550DC0324AE3D>, <2 x double> %104)
%106 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %92, <2 x double> %105, <2 x double> %30)
%107 = tail call double @llvm.fmuladd.f64(double %1, double 0xBD24FEFF084CF711, double 0xBDC55949A24CF361)
%108 = tail call double @llvm.fmuladd.f64(double %0, double 0x3D19359B5FDCD33E, double %107)
%109 = insertelement <2 x double> <double poison, double 0x3EA713287F3E0D0D>, double %108, i64 0
%110 = insertelement <2 x double> <double 0xBDEEC25813BB6656, double poison>, double %60, i64 1
%111 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %17, <2 x double> %109, <2 x double> %110)
%112 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %12, <2 x double> <double 0x3CAA30EA23CB4FC3, double 0xBDB757D23461E618>, <2 x double> <double 0xBCF038460A99D472, double 0xBE55599498FA7240>)
%113 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %92, <2 x double> %112, <2 x double> %111)
%114 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %92, <2 x double> %113, <2 x double> %59)
%115 = tail call double @llvm.fmuladd.f64(double %1, double 0x3EDF41A20BDDB36E, double 0xBF3684CD73B033D1)
%116 = tail call double @llvm.fmuladd.f64(double %0, double 0x3EA713287F3E0D0D, double %115)
%117 = tail call double @llvm.fmuladd.f64(double %1, double 0xBDC757D23461E618, double 0xBE65599498FA7240)
%118 = tail call double @llvm.fmuladd.f64(double %2, double %117, double %116)
%119 = fmul double %1, 0x3D997A61C036CF12
%120 = fsub double 0x3E3B69FE4FF2D058, %119
%121 = tail call double @llvm.fmuladd.f64(double %1, double %120, double 0xBE958F74D806A8A4)
%122 = tail call double @llvm.fmuladd.f64(double %0, double 0x3E0557A0F47894E8, double %121)
%123 = fmul double %1, 2.000000e+00
%124 = tail call double @llvm.fmuladd.f64(double %123, double 0xBD24FEFF084CF711, double 0xBDC55949A24CF361)
%125 = tail call double @llvm.fmuladd.f64(double %0, double 0x3D19359B5FDCD33E, double %124)
%126 = tail call double @llvm.fmuladd.f64(double %2, double 0x3CAA30EA23CB4FC3, double %125)
%127 = tail call double @llvm.fmuladd.f64(double %2, double %126, double %122)
%128 = insertelement <2 x double> <double 0x3DF550DC0324AE3D, double poison>, double %32, i64 1
%129 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %92, <2 x double> %128, <2 x double> %20)
%130 = fmul double %1, 0x3D19359B5FDCD33E
%131 = extractelement <2 x double> %57, i64 0
%132 = tail call double @llvm.fmuladd.f64(double %130, double %2, double %131)
%133 = extractelement <2 x double> %106, i64 0
%134 = fmul double %133, %79
%135 = extractelement <2 x double> %129, i64 1
%136 = shufflevector <2 x double> %106, <2 x double> %129, <2 x i32> <i32 0, i32 3>
%137 = fmul <2 x double> %136, %99
%138 = extractelement <2 x double> %137, i64 1
%139 = fdiv double %134, %138
%140 = extractelement <2 x double> %114, i64 0
%141 = extractelement <2 x double> %114, i64 1
%142 = fmul double %140, %141
%143 = insertelement <2 x double> poison, double %127, i64 0
%144 = insertelement <2 x double> %143, double %142, i64 1
%145 = extractelement <2 x double> %99, i64 1
%146 = shufflevector <2 x double> %99, <2 x double> %137, <2 x i32> <i32 1, i32 3>
%147 = fdiv <2 x double> %144, %146
%148 = fmul double %133, %141
%149 = fmul double %135, %135
%150 = fdiv double %148, %149
%151 = fdiv double %118, %135
%152 = extractelement <2 x double> %147, i64 0
%153 = fsub double %152, %139
%154 = extractelement <2 x double> %147, i64 1
%155 = fsub double %153, %154
%156 = tail call double @llvm.fmuladd.f64(double %150, double 2.000000e+00, double %155)
%157 = fsub double %156, %151
%158 = fneg double %145
%159 = fmul double %141, %158
%160 = tail call double @llvm.fmuladd.f64(double %135, double %79, double %159)
%161 = extractelement <2 x double> %106, i64 1
%162 = fmul double %161, %158
%163 = extractelement <2 x double> %99, i64 0
%164 = tail call double @llvm.fmuladd.f64(double %135, double %163, double %162)
%165 = extractelement <2 x double> %137, i64 0
%166 = fdiv double %165, %138
%167 = fmul double %140, %161
%168 = insertelement <2 x double> poison, double %132, i64 0
%169 = insertelement <2 x double> %168, double %167, i64 1
%170 = fdiv <2 x double> %169, %146
%171 = fmul double %133, %161
%172 = fdiv double %171, %149
%173 = extractelement <2 x double> %129, i64 0
%174 = fdiv double %173, %135
%175 = extractelement <2 x double> %170, i64 0
%176 = fsub double %175, %166
%177 = extractelement <2 x double> %170, i64 1
%178 = fsub double %176, %177
%179 = tail call double @llvm.fmuladd.f64(double %172, double 2.000000e+00, double %178)
%180 = fsub double %179, %174
%181 = fneg double %160
%182 = fdiv double %181, %164
%183 = tail call double @llvm.fmuladd.f64(double %182, double %180, double %157)
%184 = fmul double %183, 1.000000e-04
ret double %184
}