void gsw_rho_first_derivatives(double sa, double ct, double p, double *drho_dsa,
                               double *drho_dct, double *drho_dp) {
  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, pa2db = 1e-4;
  double sqrtsa, v_hat_denominator, v_hat_numerator;
  double dvhatden_dct, dvhatnum_dct, dvhatden_dsa, dvhatnum_dsa;
  double dvhatden_dp, dvhatnum_dp, rho, rec_num;
  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));
  rec_num = 1e0 / v_hat_numerator;
  rho = rec_num * v_hat_denominator;
  *drho_dsa = (dvhatden_dsa - dvhatnum_dsa * rho) * rec_num;
  *drho_dct = (dvhatden_dct - dvhatnum_dct * rho) * rec_num;
  *drho_dp = pa2db * (dvhatden_dp - dvhatnum_dp * rho) * rec_num;
  return;
}


x86 assembly (clang, -O0):
<gsw_rho_first_derivatives>:
push   %rbp
mov    %rsp,%rbp
sub    $0x480,%rsp
movsd  %xmm0,-0x8(%rbp)
movsd  %xmm1,-0x10(%rbp)
movsd  %xmm2,-0x18(%rbp)
mov    %rdi,-0x20(%rbp)
mov    %rsi,-0x28(%rbp)
mov    %rdx,-0x30(%rbp)
movsd  0x216a(%rip),%xmm0
movsd  %xmm0,-0x38(%rbp)
movsd  0x20c5(%rip),%xmm0
movsd  %xmm0,-0x40(%rbp)
movsd  0x2148(%rip),%xmm0
movsd  %xmm0,-0x48(%rbp)
movsd  0x2133(%rip),%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  0x1fde(%rip),%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  0x1fc9(%rip),%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  0x1fb4(%rip),%xmm0
movsd  %xmm0,-0x68(%rbp)
movsd  0x20f7(%rip),%xmm0
movsd  %xmm0,-0x70(%rbp)
movsd  0x204a(%rip),%xmm0
movsd  %xmm0,-0x78(%rbp)
movsd  0x20d5(%rip),%xmm0
movsd  %xmm0,-0x80(%rbp)
movsd  0x20c0(%rip),%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
movsd  0x1ee0(%rip),%xmm0
movsd  %xmm0,-0x90(%rbp)
ff
movsd  0x1ec8(%rip),%xmm0
movsd  %xmm0,-0x98(%rbp)
ff
movsd  0x1eb0(%rip),%xmm0
movsd  %xmm0,-0xa0(%rbp)
ff
movsd  0x1e98(%rip),%xmm0
movsd  %xmm0,-0xa8(%rbp)
ff
movsd  0x1e80(%rip),%xmm0
movsd  %xmm0,-0xb0(%rbp)
ff
movsd  0x2058(%rip),%xmm0
movsd  %xmm0,-0xb8(%rbp)
ff
movsd  0x1fa0(%rip),%xmm0
movsd  %xmm0,-0xc0(%rbp)
ff
movsd  0x2030(%rip),%xmm0
movsd  %xmm0,-0xc8(%rbp)
ff
movsd  0x1ec8(%rip),%xmm0
movsd  %xmm0,-0xd0(%rbp)
ff
movsd  0x1da0(%rip),%xmm0
movsd  %xmm0,-0xd8(%rbp)
ff
movsd  0x1f58(%rip),%xmm0
movsd  %xmm0,-0xe0(%rbp)
ff
movsd  0x1fe8(%rip),%xmm0
movsd  %xmm0,-0xe8(%rbp)
ff
movsd  0x1fd0(%rip),%xmm0
movsd  %xmm0,-0xf0(%rbp)
ff
movsd  0x1fb8(%rip),%xmm0
movsd  %xmm0,-0xf8(%rbp)
ff
movsd  0x1e60(%rip),%xmm0
movsd  %xmm0,-0x100(%rbp)
ff
movsd  0x1e48(%rip),%xmm0
movsd  %xmm0,-0x108(%rbp)
ff
movsd  0x1e30(%rip),%xmm0
movsd  %xmm0,-0x110(%rbp)
ff
movsd  0x1e18(%rip),%xmm0
movsd  %xmm0,-0x118(%rbp)
ff
movsd  0x1e00(%rip),%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
movsd  0x1f50(%rip),%xmm0
movsd  %xmm0,-0x128(%rbp)
ff
movsd  0x1e80(%rip),%xmm0
movsd  %xmm0,-0x130(%rbp)
ff
movsd  0x1f28(%rip),%xmm0
movsd  %xmm0,-0x138(%rbp)
ff
movsd  0x1f10(%rip),%xmm0
movsd  %xmm0,-0x140(%rbp)
ff
movsd  0x1ef8(%rip),%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  0x1ee0(%rip),%xmm0
movsd  %xmm0,-0x150(%rbp)
ff
movsd  0x1d08(%rip),%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  0x1cf0(%rip),%xmm0
movsd  %xmm0,-0x160(%rbp)
ff
movsd  0x1cd8(%rip),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
movsd  0x1cc0(%rip),%xmm0
movsd  %xmm0,-0x170(%rbp)
ff
movsd  0x1ca8(%rip),%xmm0
movsd  %xmm0,-0x178(%rbp)
ff
movsd  0x1c90(%rip),%xmm0
movsd  %xmm0,-0x180(%rbp)
ff
movsd  0x1e68(%rip),%xmm0
movsd  %xmm0,-0x188(%rbp)
ff
movsd  0x1d90(%rip),%xmm0
movsd  %xmm0,-0x190(%rbp)
ff
movsd  0x1e40(%rip),%xmm0
movsd  %xmm0,-0x198(%rbp)
ff
movsd  0x1cc8(%rip),%xmm0
movsd  %xmm0,-0x1a0(%rbp)
ff
movsd  0x1e18(%rip),%xmm0
movsd  %xmm0,-0x1a8(%rbp)
ff
movsd  0x1d48(%rip),%xmm0
movsd  %xmm0,-0x1b0(%rbp)
ff
movsd  0x1df0(%rip),%xmm0
movsd  %xmm0,-0x1b8(%rbp)
ff
movsd  0x1dd8(%rip),%xmm0
movsd  %xmm0,-0x1c0(%rbp)
ff
movsd  0x1dc0(%rip),%xmm0
movsd  %xmm0,-0x1c8(%rbp)
ff
movsd  0x1cf8(%rip),%xmm0
movsd  %xmm0,-0x1d0(%rbp)
ff
movsd  0x1d98(%rip),%xmm0
movsd  %xmm0,-0x1d8(%rbp)
ff
movsd  0x1d80(%rip),%xmm0
movsd  %xmm0,-0x1e0(%rbp)
ff
movsd  0x1d68(%rip),%xmm0
movsd  %xmm0,-0x1e8(%rbp)
ff
movsd  0x1d50(%rip),%xmm0
movsd  %xmm0,-0x1f0(%rbp)
ff
movsd  0x1c08(%rip),%xmm0
movsd  %xmm0,-0x1f8(%rbp)
ff
movsd  0x1d28(%rip),%xmm0
movsd  %xmm0,-0x200(%rbp)
ff
movsd  0x1bd0(%rip),%xmm0
movsd  %xmm0,-0x208(%rbp)
ff
movsd  0x1d00(%rip),%xmm0
movsd  %xmm0,-0x210(%rbp)
ff
movsd  0x1b98(%rip),%xmm0
movsd  %xmm0,-0x218(%rbp)
ff
movsd  0x1cd8(%rip),%xmm0
movsd  %xmm0,-0x220(%rbp)
ff
movsd  0x1cc0(%rip),%xmm0
movsd  %xmm0,-0x228(%rbp)
ff
movsd  0x1ca8(%rip),%xmm0
movsd  %xmm0,-0x230(%rbp)
ff
movsd  0x1c90(%rip),%xmm0
movsd  %xmm0,-0x238(%rbp)
ff
movsd  0x1bd8(%rip),%xmm0
movsd  %xmm0,-0x240(%rbp)
ff
movsd  0x1c68(%rip),%xmm0
movsd  %xmm0,-0x248(%rbp)
ff
movsd  0x1c50(%rip),%xmm0
movsd  %xmm0,-0x250(%rbp)
ff
movsd  0x1c38(%rip),%xmm0
movsd  %xmm0,-0x258(%rbp)
ff
movsd  0x1c20(%rip),%xmm0
movsd  %xmm0,-0x260(%rbp)
ff
movsd  0x1c08(%rip),%xmm0
movsd  %xmm0,-0x268(%rbp)
ff
movsd  0x1bf0(%rip),%xmm0
movsd  %xmm0,-0x270(%rbp)
ff
movsd  0x1bd8(%rip),%xmm0
movsd  %xmm0,-0x278(%rbp)
ff
movsd  0x1ab0(%rip),%xmm0
movsd  %xmm0,-0x280(%rbp)
ff
movsd  0x1bb0(%rip),%xmm0
movsd  %xmm0,-0x288(%rbp)
ff
movsd  0x1b98(%rip),%xmm0
movsd  %xmm0,-0x290(%rbp)
ff
movsd  0x1a60(%rip),%xmm0
movsd  %xmm0,-0x298(%rbp)
ff
movsd  0x1b70(%rip),%xmm0
movsd  %xmm0,-0x2a0(%rbp)
ff
movsd  0x1a28(%rip),%xmm0
movsd  %xmm0,-0x2a8(%rbp)
ff
movsd  0x1aa8(%rip),%xmm0
movsd  %xmm0,-0x2b0(%rbp)
ff
movsd  0x1b38(%rip),%xmm0
movsd  %xmm0,-0x2b8(%rbp)
ff
movsd  0x1b20(%rip),%xmm0
movsd  %xmm0,-0x2c0(%rbp)
ff
movsd  0x1b08(%rip),%xmm0
movsd  %xmm0,-0x2c8(%rbp)
ff
movsd  0x1af0(%rip),%xmm0
movsd  %xmm0,-0x2d0(%rbp)
ff
movsd  0x1ad8(%rip),%xmm0
movsd  %xmm0,-0x2d8(%rbp)
ff
movsd  0x1ac0(%rip),%xmm0
movsd  %xmm0,-0x2e0(%rbp)
ff
movsd  0x1aa8(%rip),%xmm0
movsd  %xmm0,-0x2e8(%rbp)
ff
movsd  0x1a90(%rip),%xmm0
movsd  %xmm0,-0x2f0(%rbp)
ff
movsd  0x19f8(%rip),%xmm0
movsd  %xmm0,-0x2f8(%rbp)
ff
movsd  0x19e0(%rip),%xmm0
movsd  %xmm0,-0x300(%rbp)
ff
movsd  0x1a58(%rip),%xmm0
movsd  %xmm0,-0x308(%rbp)
ff
movsd  0x1a40(%rip),%xmm0
movsd  %xmm0,-0x310(%rbp)
ff
movsd  0x1a28(%rip),%xmm0
movsd  %xmm0,-0x318(%rbp)
ff
movsd  0x1a10(%rip),%xmm0
movsd  %xmm0,-0x320(%rbp)
ff
movsd  0x19f8(%rip),%xmm0
movsd  %xmm0,-0x328(%rbp)
ff
movsd  0x19e0(%rip),%xmm0
movsd  %xmm0,-0x330(%rbp)
ff
movsd  0x19c8(%rip),%xmm0
movsd  %xmm0,-0x338(%rbp)
ff
movsd  0x19b0(%rip),%xmm0
movsd  %xmm0,-0x340(%rbp)
ff
movsd  0x1998(%rip),%xmm0
movsd  %xmm0,-0x348(%rbp)
ff
movsd  0x1980(%rip),%xmm0
movsd  %xmm0,-0x350(%rbp)
ff
movsd  0x1968(%rip),%xmm0
movsd  %xmm0,-0x358(%rbp)
ff
movsd  0x1950(%rip),%xmm0
movsd  %xmm0,-0x360(%rbp)
ff
movsd  0x18c8(%rip),%xmm0
movsd  %xmm0,-0x368(%rbp)
ff
movsd  0x18b0(%rip),%xmm0
movsd  %xmm0,-0x370(%rbp)
ff
movsd  0x1918(%rip),%xmm0
movsd  %xmm0,-0x378(%rbp)
ff
movsd  0x1900(%rip),%xmm0
movsd  %xmm0,-0x380(%rbp)
ff
movsd  0x18e8(%rip),%xmm0
movsd  %xmm0,-0x388(%rbp)
ff
movsd  0x18d0(%rip),%xmm0
movsd  %xmm0,-0x390(%rbp)
ff
movsd  0x18b8(%rip),%xmm0
movsd  %xmm0,-0x398(%rbp)
ff
movsd  0x18a0(%rip),%xmm0
movsd  %xmm0,-0x3a0(%rbp)
ff
movsd  0x1888(%rip),%xmm0
movsd  %xmm0,-0x3a8(%rbp)
ff
movsd  0x1870(%rip),%xmm0
movsd  %xmm0,-0x3b0(%rbp)
ff
movsd  0x1858(%rip),%xmm0
movsd  %xmm0,-0x3b8(%rbp)
ff
movsd  0x1840(%rip),%xmm0
movsd  %xmm0,-0x3c0(%rbp)
ff
movsd  0x1828(%rip),%xmm0
movsd  %xmm0,-0x3c8(%rbp)
ff
movsd  0x1810(%rip),%xmm0
movsd  %xmm0,-0x3d0(%rbp)
ff
movsd  0x17f8(%rip),%xmm0
movsd  %xmm0,-0x3d8(%rbp)
ff
movsd  0x17e0(%rip),%xmm0
movsd  %xmm0,-0x3e0(%rbp)
ff
movsd  0x17c8(%rip),%xmm0
movsd  %xmm0,-0x3e8(%rbp)
ff
movsd  0x17b0(%rip),%xmm0
movsd  %xmm0,-0x3f0(%rbp)
ff
movsd  0x1798(%rip),%xmm0
movsd  %xmm0,-0x3f8(%rbp)
ff
movsd  0x1780(%rip),%xmm0
movsd  %xmm0,-0x400(%rbp)
ff
movsd  0x1768(%rip),%xmm0
movsd  %xmm0,-0x408(%rbp)
ff
movsd  0x1750(%rip),%xmm0
movsd  %xmm0,-0x410(%rbp)
ff
movsd  0x1738(%rip),%xmm0
movsd  %xmm0,-0x418(%rbp)
ff
movsd  0x1720(%rip),%xmm0
movsd  %xmm0,-0x420(%rbp)
ff
movsd  0x1708(%rip),%xmm0
movsd  %xmm0,-0x428(%rbp)
ff
movsd  -0x8(%rbp),%xmm0
call   1030 <sqrt@plt>
movsd  %xmm0,-0x430(%rbp)
ff
movsd  -0x38(%rbp),%xmm1
movsd  -0x10(%rbp),%xmm0
movsd  -0x40(%rbp),%xmm3
movsd  -0x10(%rbp),%xmm2
movsd  -0x48(%rbp),%xmm5
movsd  -0x50(%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  -0x58(%rbp),%xmm2
movsd  -0x10(%rbp),%xmm3
movsd  -0x60(%rbp),%xmm5
movsd  -0x68(%rbp),%xmm4
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x430(%rbp),%xmm2
ff
movsd  -0x70(%rbp),%xmm5
movsd  -0x10(%rbp),%xmm4
movsd  -0x78(%rbp),%xmm7
movsd  -0x10(%rbp),%xmm6
movsd  -0x80(%rbp),%xmm9
movsd  -0x88(%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  -0x90(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x98(%rbp),%xmm5
ff
movsd  -0xa0(%rbp),%xmm4
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
movsd  -0x8(%rbp),%xmm3
movsd  -0xa8(%rbp),%xmm5
ff
movsd  -0xb0(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x18(%rbp),%xmm2
movsd  -0xb8(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm5
movsd  -0xc0(%rbp),%xmm7
ff
movsd  -0xc8(%rbp),%xmm6
ff
movsd  -0x10(%rbp),%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm5
addsd  %xmm4,%xmm5
movsd  -0xd0(%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,-0x438(%rbp)
ff
movsd  -0xd8(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm0
movsd  -0xe0(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0xe8(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0xf0(%rbp),%xmm7
ff
movsd  -0xf8(%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  -0x100(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x108(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x110(%rbp),%xmm7
ff
movsd  -0x10(%rbp),%xmm6
movsd  -0x118(%rbp),%xmm9
ff ff
movsd  -0x120(%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  -0x150(%rbp),%xmm3
ff
movsd  -0x8(%rbp),%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x430(%rbp),%xmm2
ff
movsd  -0x128(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x130(%rbp),%xmm7
ff
movsd  -0x10(%rbp),%xmm6
movsd  -0x138(%rbp),%xmm9
ff ff
movsd  -0x10(%rbp),%xmm8
movsd  -0x140(%rbp),%xmm11
ff ff
movsd  -0x148(%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  -0x158(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x160(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x168(%rbp),%xmm7
ff
movsd  -0x170(%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  -0x178(%rbp),%xmm5
ff
movsd  -0x180(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x18(%rbp),%xmm2
movsd  -0x188(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm5
movsd  -0x190(%rbp),%xmm6
ff
movsd  -0x198(%rbp),%xmm7
ff
movsd  -0x10(%rbp),%xmm8
mulsd  %xmm8,%xmm7
addsd  %xmm6,%xmm7
movsd  -0x1a0(%rbp),%xmm6
ff
movsd  -0x8(%rbp),%xmm8
mulsd  %xmm8,%xmm6
addsd  %xmm7,%xmm6
mulsd  %xmm6,%xmm5
addsd  %xmm4,%xmm5
movsd  -0x18(%rbp),%xmm4
movsd  -0x1a8(%rbp),%xmm7
ff
movsd  -0x1b0(%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,-0x440(%rbp)
ff
movsd  -0x1b8(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm0
movsd  -0x1c0(%rbp),%xmm3
ff
movsd  -0x1c8(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x8(%rbp),%xmm1
movsd  -0x1d0(%rbp),%xmm2
ff
movsd  -0x1d8(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x430(%rbp),%xmm2
ff
movsd  -0x1e0(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x1e8(%rbp),%xmm7
ff
movsd  -0x1f0(%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  -0x1f8(%rbp),%xmm3
ff
movsd  -0x200(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
movsd  -0x208(%rbp),%xmm3
ff
movsd  -0x8(%rbp),%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x18(%rbp),%xmm2
movsd  -0x210(%rbp),%xmm5
ff
movsd  -0x218(%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  -0x220(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm0
movsd  -0x228(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x230(%rbp),%xmm5
ff
movsd  -0x238(%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  -0x240(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm3
movsd  -0x248(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x250(%rbp),%xmm7
ff
movsd  -0x258(%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  -0x430(%rbp),%xmm2
ff
movsd  -0x260(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x268(%rbp),%xmm7
ff
movsd  -0x10(%rbp),%xmm6
movsd  -0x270(%rbp),%xmm9
ff ff
movsd  -0x278(%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  -0x280(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x288(%rbp),%xmm5
ff
movsd  -0x290(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
movsd  -0x298(%rbp),%xmm3
ff
movsd  -0x8(%rbp),%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x18(%rbp),%xmm2
movsd  -0x2a0(%rbp),%xmm5
ff
movsd  -0x2a8(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
movsd  -0x2b0(%rbp),%xmm5
ff
movsd  -0x8(%rbp),%xmm6
mulsd  %xmm6,%xmm5
addsd  %xmm4,%xmm5
movsd  -0x2b8(%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,-0x450(%rbp)
ff
movsd  -0x2c0(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm0
movsd  -0x2c8(%rbp),%xmm3
ff
movsd  -0x2d0(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x430(%rbp),%xmm1
ff
movsd  -0x2d8(%rbp),%xmm3
movsd  -0x10(%rbp),%xmm2
movsd  -0x2e0(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x2e8(%rbp),%xmm7
ff
movsd  -0x2f0(%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  -0x2f8(%rbp),%xmm2
ff
movsd  -0x300(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x308(%rbp),%xmm2
ff
movsd  -0x18(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x458(%rbp)
ff
movsd  -0x310(%rbp),%xmm0
ff
movsd  -0x10(%rbp),%xmm1
movsd  -0x318(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x320(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x328(%rbp),%xmm7
ff
movsd  -0x330(%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  -0x430(%rbp),%xmm0
ff
movsd  -0x338(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x340(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm4
movsd  -0x348(%rbp),%xmm7
ff
movsd  -0x10(%rbp),%xmm6
movsd  -0x350(%rbp),%xmm9
ff ff
movsd  -0x358(%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  -0x360(%rbp),%xmm1
ff
movsd  -0x8(%rbp),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x18(%rbp),%xmm0
movsd  -0x368(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x370(%rbp),%xmm5
ff
movsd  -0x378(%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,-0x460(%rbp)
ff
movsd  -0x380(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm0
movsd  -0x388(%rbp),%xmm3
ff
movsd  -0x390(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x8(%rbp),%xmm1
movsd  -0x398(%rbp),%xmm3
ff
movsd  -0x3a0(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x18(%rbp),%xmm0
movsd  -0x3a8(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm3
movsd  -0x3b0(%rbp),%xmm5
ff
movsd  -0x3b8(%rbp),%xmm4
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x3c0(%rbp),%xmm2
ff
movsd  -0x8(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x468(%rbp)
ff
movsd  -0x3c8(%rbp),%xmm1
ff
movsd  -0x10(%rbp),%xmm0
movsd  -0x3d0(%rbp),%xmm3
ff
movsd  -0x10(%rbp),%xmm2
movsd  -0x3d8(%rbp),%xmm5
ff
movsd  -0x3e0(%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  -0x3e8(%rbp),%xmm3
ff
movsd  -0x3f0(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm4
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x18(%rbp),%xmm0
movsd  -0x3f8(%rbp),%xmm2
ff
movsd  -0x10(%rbp),%xmm3
movsd  -0x400(%rbp),%xmm4
ff
movsd  -0x408(%rbp),%xmm5
ff
movsd  -0x10(%rbp),%xmm6
mulsd  %xmm6,%xmm5
addsd  %xmm4,%xmm5
movsd  -0x410(%rbp),%xmm4
ff
movsd  -0x8(%rbp),%xmm6
mulsd  %xmm6,%xmm4
addsd  %xmm5,%xmm4
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x18(%rbp),%xmm2
movsd  -0x418(%rbp),%xmm5
ff
movsd  -0x420(%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,-0x470(%rbp)
ff
movsd  0xc86(%rip),%xmm0
divsd  -0x440(%rbp),%xmm0
ff
movsd  %xmm0,-0x480(%rbp)
ff
movsd  -0x480(%rbp),%xmm0
ff
mulsd  -0x438(%rbp),%xmm0
ff
movsd  %xmm0,-0x478(%rbp)
ff
movsd  -0x458(%rbp),%xmm1
ff
movsd  -0x460(%rbp),%xmm0
ff
movsd  -0x478(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mulsd  -0x480(%rbp),%xmm0
ff
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
movsd  -0x448(%rbp),%xmm1
ff
movsd  -0x450(%rbp),%xmm0
ff
movsd  -0x478(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mulsd  -0x480(%rbp),%xmm0
ff
mov    -0x28(%rbp),%rax
movsd  %xmm0,(%rax)
movsd  -0x428(%rbp),%xmm0
ff
movsd  -0x468(%rbp),%xmm2
ff
movsd  -0x470(%rbp),%xmm1
ff
movsd  -0x478(%rbp),%xmm3
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm3,%xmm1
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
mulsd  -0x480(%rbp),%xmm0
ff
mov    -0x30(%rbp),%rax
movsd  %xmm0,(%rax)
add    $0x480,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<gsw_rho_first_derivatives>:
push   %r15
push   %r14
push   %rbx
sub    $0x30,%rsp
mov    %rdx,%r14
mov    %rsi,%r15
mov    %rdi,%rbx
movsd  %xmm2,0x20(%rsp)
movsd  %xmm1,0x28(%rsp)
movapd %xmm0,%xmm7
xorpd  %xmm0,%xmm0
ucomisd %xmm0,%xmm7
jb     1145 <gsw_rho_first_derivatives+0x35>
xorps  %xmm2,%xmm2
sqrtsd %xmm7,%xmm2
jmp    115c <gsw_rho_first_derivatives+0x4c>
movapd %xmm7,%xmm0
movsd  %xmm7,(%rsp)
call   1030 <sqrt@plt>
movsd  (%rsp),%xmm7
movapd %xmm0,%xmm2
movsd  0xe9c(%rip),%xmm1
movsd  0x28(%rsp),%xmm8
mulsd  %xmm8,%xmm1
addsd  0xe90(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xe8b(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xe86(%rip),%xmm1
movsd  0xe86(%rip),%xmm3
mulsd  %xmm8,%xmm3
addsd  0xe81(%rip),%xmm3
mulsd  %xmm8,%xmm3
addsd  0xe7c(%rip),%xmm3
movapd %xmm3,%xmm4
movsd  %xmm3,0x18(%rsp)
movsd  0xe72(%rip),%xmm3
mulsd  %xmm8,%xmm3
addsd  0xe6d(%rip),%xmm3
mulsd  %xmm8,%xmm3
addsd  0xe68(%rip),%xmm3
mulsd  %xmm8,%xmm3
addsd  0xe63(%rip),%xmm3
mulsd  %xmm2,%xmm3
addsd  %xmm4,%xmm3
mulsd  %xmm7,%xmm3
addsd  %xmm1,%xmm3
movsd  0xe53(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xe4e(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xe49(%rip),%xmm1
movsd  0xe48(%rip),%xmm9
movapd %xmm8,%xmm5
mulsd  %xmm9,%xmm5
addsd  0xe3e(%rip),%xmm5
movsd  %xmm5,0x10(%rsp)
movapd %xmm7,%xmm4
mulsd  %xmm5,%xmm4
movapd %xmm4,%xmm5
movsd  0xe2c(%rip),%xmm4
mulsd  %xmm8,%xmm4
movsd  0xe26(%rip),%xmm12
addsd  %xmm12,%xmm4
mulsd  %xmm8,%xmm4
addsd  0xe1c(%rip),%xmm4
addsd  %xmm1,%xmm5
movsd  %xmm5,(%rsp)
movapd %xmm7,%xmm10
mulsd  0xe0d(%rip),%xmm10
addsd  %xmm4,%xmm10
movsd  0x20(%rsp),%xmm11
mulsd  %xmm11,%xmm10
addsd  %xmm5,%xmm10
mulsd  %xmm11,%xmm10
movsd  0xe1a(%rip),%xmm4
mulsd  %xmm8,%xmm4
addsd  0xe15(%rip),%xmm4
mulsd  %xmm8,%xmm4
addsd  0xe10(%rip),%xmm4
mulsd  %xmm8,%xmm4
addsd  0xe0b(%rip),%xmm4
mulsd  %xmm8,%xmm4
addsd  0xe06(%rip),%xmm4
addsd  %xmm3,%xmm10
movsd  0xe01(%rip),%xmm1
mulsd  %xmm7,%xmm1
movsd  0xdfc(%rip),%xmm15
mulsd  %xmm8,%xmm15
addsd  0xdf6(%rip),%xmm15
mulsd  %xmm8,%xmm15
addsd  0xdf0(%rip),%xmm15
mulsd  %xmm8,%xmm15
addsd  0xdea(%rip),%xmm15
mulsd  %xmm8,%xmm15
addsd  0xde4(%rip),%xmm15
addsd  %xmm4,%xmm1
mulsd  %xmm2,%xmm15
addsd  %xmm1,%xmm15
movsd  0xd56(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xd51(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xd4c(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xd47(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xd42(%rip),%xmm1
mulsd  %xmm7,%xmm15
addsd  %xmm1,%xmm15
movsd  0xd90(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xd8b(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xd86(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xd81(%rip),%xmm1
movapd %xmm8,%xmm14
mulsd  0xd7b(%rip),%xmm14
addsd  0xd7a(%rip),%xmm14
mulsd  %xmm7,%xmm14
addsd  %xmm1,%xmm14
movsd  0xd70(%rip),%xmm1
mulsd  %xmm8,%xmm1
movsd  0xd6a(%rip),%xmm13
addsd  %xmm13,%xmm1
movsd  0xd65(%rip),%xmm6
movapd %xmm7,%xmm3
mulsd  %xmm6,%xmm3
movsd  %xmm3,0x8(%rsp)
addsd  %xmm3,%xmm1
mulsd  %xmm8,%xmm1
addsd  0xd4e(%rip),%xmm1
movsd  0xd4e(%rip),%xmm5
movapd %xmm8,%xmm3
mulsd  %xmm5,%xmm3
addsd  0xd45(%rip),%xmm3
mulsd  %xmm11,%xmm3
addsd  %xmm1,%xmm3
mulsd  %xmm11,%xmm3
addsd  %xmm14,%xmm3
mulsd  %xmm11,%xmm3
addsd  %xmm15,%xmm3
movsd  0xd27(%rip),%xmm15
mulsd  %xmm8,%xmm15
addsd  0xd21(%rip),%xmm15
mulsd  %xmm8,%xmm15
addsd  0xb9b(%rip),%xmm15
movsd  0xd13(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xb9e(%rip),%xmm1
movsd  0xd06(%rip),%xmm0
mulsd  %xmm8,%xmm0
addsd  0xd01(%rip),%xmm0
mulsd  %xmm8,%xmm0
addsd  0xb9c(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mulsd  %xmm7,%xmm0
addsd  %xmm15,%xmm0
movsd  0xce3(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xb8e(%rip),%xmm1
mulsd  %xmm7,%xmm9
addsd  %xmm1,%xmm9
movsd  0xccb(%rip),%xmm15
mulsd  %xmm8,%xmm15
addsd  %xmm15,%xmm12
mulsd  %xmm11,%xmm12
addsd  %xmm9,%xmm12
mulsd  %xmm11,%xmm12
movsd  0xcb1(%rip),%xmm9
mulsd  %xmm8,%xmm9
addsd  0xcab(%rip),%xmm9
addsd  %xmm0,%xmm12
mulsd  %xmm8,%xmm9
addsd  0xca0(%rip),%xmm9
movsd  0xca0(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xc9b(%rip),%xmm1
mulsd  %xmm8,%xmm9
mulsd  %xmm8,%xmm1
addsd  0xc91(%rip),%xmm1
addsd  0xb60(%rip),%xmm9
mulsd  %xmm8,%xmm1
addsd  0xb7b(%rip),%xmm1
movsd  0xc7b(%rip),%xmm0
mulsd  %xmm8,%xmm0
addsd  0xc76(%rip),%xmm0
mulsd  %xmm8,%xmm0
addsd  0xc71(%rip),%xmm0
mulsd  %xmm8,%xmm0
addsd  0xb7c(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mulsd  %xmm7,%xmm0
addsd  %xmm9,%xmm0
movsd  0xc53(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xc4e(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  0xb69(%rip),%xmm1
movapd %xmm7,%xmm9
mulsd  0xb6b(%rip),%xmm9
addsd  %xmm1,%xmm9
movsd  0xc2e(%rip),%xmm1
mulsd  %xmm8,%xmm1
addsd  %xmm1,%xmm13
addsd  0x8(%rsp),%xmm13
mulsd  %xmm11,%xmm5
addsd  %xmm13,%xmm5
mulsd  %xmm11,%xmm5
addsd  %xmm9,%xmm5
movsd  0xc08(%rip),%xmm13
mulsd  %xmm8,%xmm13
addsd  0xc02(%rip),%xmm13
mulsd  %xmm11,%xmm5
mulsd  %xmm8,%xmm13
addsd  0xbf7(%rip),%xmm13
addsd  %xmm0,%xmm5
mulsd  %xmm8,%xmm13
addsd  0xbed(%rip),%xmm13
movapd %xmm2,%xmm9
mulsd  %xmm2,%xmm13
addsd  0x18(%rsp),%xmm13
movsd  0xa3c(%rip),%xmm2
mulsd  %xmm11,%xmm2
addsd  0x10(%rsp),%xmm2
movsd  0xbc9(%rip),%xmm0
mulsd  %xmm8,%xmm0
addsd  0xbc4(%rip),%xmm0
mulsd  %xmm11,%xmm2
mulsd  %xmm8,%xmm0
addsd  0xbba(%rip),%xmm0
addsd  %xmm13,%xmm2
mulsd  %xmm8,%xmm0
addsd  0xbb0(%rip),%xmm0
mulsd  %xmm8,%xmm0
addsd  0xbab(%rip),%xmm0
mulsd  %xmm9,%xmm0
addsd  %xmm4,%xmm0
movsd  0xba2(%rip),%xmm4
mulsd  %xmm7,%xmm4
addsd  %xmm0,%xmm4
mulsd  %xmm11,%xmm6
addsd  0xa6d(%rip),%xmm6
mulsd  %xmm8,%xmm6
addsd  0xa68(%rip),%xmm6
mulsd  %xmm11,%xmm6
addsd  %xmm4,%xmm6
addsd  0xb76(%rip),%xmm15
mulsd  %xmm8,%xmm15
addsd  0xb70(%rip),%xmm15
movsd  0xb70(%rip),%xmm0
mulsd  %xmm7,%xmm0
addsd  %xmm15,%xmm0
mulsd  %xmm11,%xmm0
addsd  (%rsp),%xmm0
addsd  0xb5d(%rip),%xmm1
mulsd  0xb5d(%rip),%xmm7
addsd  %xmm1,%xmm7
mulsd  %xmm8,%xmm7
addsd  0xb54(%rip),%xmm7
mulsd  0xb53(%rip),%xmm8
addsd  0xb52(%rip),%xmm8
mulsd  %xmm11,%xmm8
addsd  %xmm7,%xmm8
mulsd  %xmm11,%xmm8
addsd  %xmm14,%xmm8
movsd  0x956(%rip),%xmm1
divsd  %xmm3,%xmm1
mulsd  %xmm1,%xmm10
mulsd  %xmm10,%xmm6
subsd  %xmm6,%xmm2
mulsd  %xmm1,%xmm2
movsd  %xmm2,(%rbx)
mulsd  %xmm10,%xmm5
subsd  %xmm5,%xmm12
mulsd  %xmm1,%xmm12
movsd  %xmm12,(%r15)
mulsd  %xmm8,%xmm10
subsd  %xmm10,%xmm0
mulsd  0xafe(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,(%r14)
add    $0x30,%rsp
pop    %rbx
pop    %r14
pop    %r15
ret

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

LLVM IR (-O2):
define void @gsw_rho_first_derivatives(double %0, double %1, double %2, double* nocapture writeonly %3, double* nocapture writeonly %4, double* nocapture writeonly %5) {
%7 = tail call double @sqrt(double %0)
%8 = tail call double @llvm.fmuladd.f64(double %1, double 0x3F535CDA0AA5141F, double 0xBFA01DD4BE07158E)
%9 = tail call double @llvm.fmuladd.f64(double %1, double %8, double 0x4006B832E6480B06)
%10 = tail call double @llvm.fmuladd.f64(double %1, double %9, double 0x408F3EBC998D192F)
%11 = tail call double @llvm.fmuladd.f64(double %1, double 0x3F2E830001452CFC, double 0xBF9E94ED844FA0F2)
%12 = tail call double @llvm.fmuladd.f64(double %1, double %11, double 0xC01ACAC0CAF432E4)
%13 = tail call double @llvm.fmuladd.f64(double %1, double 0x3E86144FEF843373, double 0xBEEDED10CC84A6D6)
%14 = tail call double @llvm.fmuladd.f64(double %1, double %13, double 0x3F40B259AA6BB2BF)
%15 = tail call double @llvm.fmuladd.f64(double %1, double %14, double 0xBFA46C3AB1582DFC)
%16 = tail call double @llvm.fmuladd.f64(double %7, double %15, double %12)
%17 = tail call double @llvm.fmuladd.f64(double %0, double %16, double %10)
%18 = tail call double @llvm.fmuladd.f64(double %1, double 0x3ECF41A20BDDB36E, double 0xBF3684CD73B033D1)
%19 = tail call double @llvm.fmuladd.f64(double %1, double %18, double 0xBF96DE61E08152B8)
%20 = tail call double @llvm.fmuladd.f64(double %1, double 0x3EA713287F3E0D0D, double 0xBF27AE9496D640EA)
%21 = tail call double @llvm.fmuladd.f64(double %0, double %20, double %19)
%22 = tail call double @llvm.fmuladd.f64(double %1, double 0xBDA757D23461E618, double 0xBE55599498FA7240)
%23 = tail call double @llvm.fmuladd.f64(double %1, double %22, double 0xBE94B77B40758AB4)
%24 = tail call double @llvm.fmuladd.f64(double %0, double 0x3DE550DC0324AE3D, double %23)
%25 = tail call double @llvm.fmuladd.f64(double %2, double %24, double %21)
%26 = tail call double @llvm.fmuladd.f64(double %2, double %25, double %17)
%27 = tail call double @llvm.fmuladd.f64(double %1, double 0x3E072BCFD6295640, double 0x3EB2C845F439D142)
%28 = tail call double @llvm.fmuladd.f64(double %1, double %27, double 0xBEF8A32DF0E2C663)
%29 = tail call double @llvm.fmuladd.f64(double %1, double %28, double 0x3F66BD8ADC91CDB6)
%30 = tail call double @llvm.fmuladd.f64(double %1, double %29, double 1.000000e+00)
%31 = tail call double @llvm.fmuladd.f64(double %1, double 0xBDB3E9ED19245025, double 0x3E105E675DDF54DA)
%32 = tail call double @llvm.fmuladd.f64(double %1, double %31, double 0x3E80F36B6915609B)
%33 = tail call double @llvm.fmuladd.f64(double %1, double %32, double 0xBEFCFC614ABDE6BC)
%34 = tail call double @llvm.fmuladd.f64(double %1, double %33, double 0xBF7ECECF594A4D0F)
%35 = tail call double @llvm.fmuladd.f64(double %0, double 0x3ED6BAF523B168F6, double %34)
%36 = tail call double @llvm.fmuladd.f64(double %1, double 0x3D87954B5454878B, double 0xBDC97A08262FF761)
%37 = tail call double @llvm.fmuladd.f64(double %1, double %36, double 0xBE407A356B462757)
%38 = tail call double @llvm.fmuladd.f64(double %1, double %37, double 0x3E998309C9A5AF2D)
%39 = tail call double @llvm.fmuladd.f64(double %1, double %38, double 0xBF0151A0492353E4)
%40 = tail call double @llvm.fmuladd.f64(double %7, double %39, double %35)
%41 = tail call double @llvm.fmuladd.f64(double %0, double %40, double %30)
%42 = tail call double @llvm.fmuladd.f64(double %1, double 0xBD80FC412ACF34B7, double 0x3E2B69FE4FF2D058)
%43 = tail call double @llvm.fmuladd.f64(double %1, double %42, double 0xBE958F74D806A8A4)
%44 = tail call double @llvm.fmuladd.f64(double %1, double %43, double 0xBEFCC0FF745ACC9B)
%45 = tail call double @llvm.fmuladd.f64(double %1, double 0x3E0557A0F47894E8, double 0xBE7DAA2C37AA778F)
%46 = tail call double @llvm.fmuladd.f64(double %0, double %45, double %44)
%47 = tail call double @llvm.fmuladd.f64(double %1, double 0xBD14FEFF084CF710, double 0xBDB55949A24CF361)
%48 = tail call double @llvm.fmuladd.f64(double %0, double 0x3D09359B5FDCD33E, double %47)
%49 = tail call double @llvm.fmuladd.f64(double %1, double %48, double 0xBDDEC25813BB665A)
%50 = tail call double @llvm.fmuladd.f64(double %1, double 0x3C9175F16D32352C, double 0xBCD5A05D6377C5EB)
%51 = tail call double @llvm.fmuladd.f64(double %2, double %50, double %49)
%52 = tail call double @llvm.fmuladd.f64(double %2, double %51, double %46)
%53 = tail call double @llvm.fmuladd.f64(double %2, double %52, double %41)
%54 = tail call double @llvm.fmuladd.f64(double %1, double 0x3F6D0B470FF79E2F, double 0xBFB01DD4BE07158F)
%55 = tail call double @llvm.fmuladd.f64(double %1, double %54, double 0x4006B832E6480B06)
%56 = tail call double @llvm.fmuladd.f64(double %1, double 0x3F3E830001452CFC, double 0xBF9E94ED844FA0F2)
%57 = tail call double @llvm.fmuladd.f64(double %1, double 0x3EA08F3BF3A32698, double 0xBEFDED10CC84A6D3)
%58 = tail call double @llvm.fmuladd.f64(double %1, double %57, double 0x3F40B259AA6BB2BF)
%59 = tail call double @llvm.fmuladd.f64(double %7, double %58, double %56)
%60 = tail call double @llvm.fmuladd.f64(double %0, double %59, double %55)
%61 = tail call double @llvm.fmuladd.f64(double %1, double 0x3EDF41A20BDDB36F, double 0xBF3684CD73B033D1)
%62 = tail call double @llvm.fmuladd.f64(double %0, double 0x3EA713287F3E0D0D, double %61)
%63 = tail call double @llvm.fmuladd.f64(double %1, double 0xBDB757D23461E618, double 0xBE55599498FA7240)
%64 = tail call double @llvm.fmuladd.f64(double %2, double %63, double %62)
%65 = tail call double @llvm.fmuladd.f64(double %2, double %64, double %60)
%66 = tail call double @llvm.fmuladd.f64(double %1, double 0x3E272BCFD629563F, double 0x3ECC2C68EE56B9E6)
%67 = tail call double @llvm.fmuladd.f64(double %1, double %66, double 0xBF08A32DF0E2C663)
%68 = tail call double @llvm.fmuladd.f64(double %1, double %67, double 0x3F66BD8ADC91CDB6)
%69 = tail call double @llvm.fmuladd.f64(double %1, double 0xBDD3E9ED19245025, double 0x3E288D9B0CCEFF48)
%70 = tail call double @llvm.fmuladd.f64(double %1, double %69, double 0x3E90F36B69156099)
%71 = tail call double @llvm.fmuladd.f64(double %1, double %70, double 0xBEFCFC614ABDE6BC)
%72 = tail call double @llvm.fmuladd.f64(double %1, double 0x3DA7954B54548789, double 0xBDE31B861CA3F988)
%73 = tail call double @llvm.fmuladd.f64(double %1, double %72, double 0xBE507A356B462758)
%74 = tail call double @llvm.fmuladd.f64(double %1, double %73, double 0x3E998309C9A5AF2D)
%75 = tail call double @llvm.fmuladd.f64(double %7, double %74, double %71)
%76 = tail call double @llvm.fmuladd.f64(double %0, double %75, double %68)
%77 = tail call double @llvm.fmuladd.f64(double %1, double 0xBD997A61C036CF14, double 0x3E3B69FE4FF2D058)
%78 = tail call double @llvm.fmuladd.f64(double %1, double %77, double 0xBE958F74D806A8A4)
%79 = tail call double @llvm.fmuladd.f64(double %0, double 0x3E0557A0F47894E8, double %78)
%80 = tail call double @llvm.fmuladd.f64(double %1, double 0xBD24FEFF084CF711, double 0xBDB55949A24CF361)
%81 = tail call double @llvm.fmuladd.f64(double %0, double 0x3D09359B5FDCD33E, double %80)
%82 = tail call double @llvm.fmuladd.f64(double %2, double 0x3C9175F16D32352C, double %81)
%83 = tail call double @llvm.fmuladd.f64(double %2, double %82, double %79)
%84 = tail call double @llvm.fmuladd.f64(double %2, double %83, double %76)
%85 = tail call double @llvm.fmuladd.f64(double %1, double 0x3E908F3BF3A32697, double 0xBEF671CC99637D1F)
%86 = tail call double @llvm.fmuladd.f64(double %1, double %85, double 0x3F490B867FA18C1F)
%87 = tail call double @llvm.fmuladd.f64(double %1, double %86, double 0xBFAEA2580A0444FA)
%88 = tail call double @llvm.fmuladd.f64(double %7, double %87, double %12)
%89 = tail call double @llvm.fmuladd.f64(double %2, double 0x3DE550DC0324AE3D, double %20)
%90 = tail call double @llvm.fmuladd.f64(double %2, double %89, double %88)
%91 = tail call double @llvm.fmuladd.f64(double %1, double 0x3D91AFF87F3F65A9, double 0xBDD31B861CA3F989)
%92 = tail call double @llvm.fmuladd.f64(double %1, double %91, double 0xBE48B75020E93B06)
%93 = tail call double @llvm.fmuladd.f64(double %1, double %92, double 0x3EA32247573C4361)
%94 = tail call double @llvm.fmuladd.f64(double %1, double %93, double 0xBF09FA706DB4FDD7)
%95 = tail call double @llvm.fmuladd.f64(double %7, double %94, double %34)
%96 = tail call double @llvm.fmuladd.f64(double %0, double 0x3EE6BAF523B168F6, double %95)
%97 = tail call double @llvm.fmuladd.f64(double %2, double 0x3D09359B5FDCD33E, double 0x3E0557A0F47894E8)
%98 = tail call double @llvm.fmuladd.f64(double %1, double %97, double 0xBE7DAA2C37AA778F)
%99 = tail call double @llvm.fmuladd.f64(double %2, double %98, double %96)
%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 = tail call double @llvm.fmuladd.f64(double %0, double 0x3DF550DC0324AE3D, double %101)
%103 = tail call double @llvm.fmuladd.f64(double %2, double %102, double %21)
%104 = tail call double @llvm.fmuladd.f64(double %1, double 0xBD24FEFF084CF711, double 0xBDC55949A24CF361)
%105 = tail call double @llvm.fmuladd.f64(double %0, double 0x3D19359B5FDCD33E, double %104)
%106 = tail call double @llvm.fmuladd.f64(double %1, double %105, double 0xBDEEC25813BB6656)
%107 = tail call double @llvm.fmuladd.f64(double %1, double 0x3CAA30EA23CB4FC3, double 0xBCF038460A99D472)
%108 = tail call double @llvm.fmuladd.f64(double %2, double %107, double %106)
%109 = tail call double @llvm.fmuladd.f64(double %2, double %108, double %46)
%110 = fdiv double 1.000000e+00, %53
%111 = fmul double %26, %110
%112 = fneg double %99
%113 = tail call double @llvm.fmuladd.f64(double %112, double %111, double %90)
%114 = fmul double %110, %113
store double %114, double* %3
%115 = fneg double %84
%116 = tail call double @llvm.fmuladd.f64(double %115, double %111, double %65)
%117 = fmul double %110, %116
store double %117, double* %4
%118 = fneg double %109
%119 = tail call double @llvm.fmuladd.f64(double %118, double %111, double %103)
%120 = fmul double %119, 1.000000e-04
%121 = fmul double %110, %120
store double %121, double* %5
ret void
}