void cdflib_gamma_inc(const double *a, const double *x, double *ans,
                      double *qans, const int *ind) {
  static const double alog10 = 2.30258509299405e0;
  static const double d10 = -.185185185185185e-02;
  static const double d20 = .413359788359788e-02;
  static const double d30 = .649434156378601e-03;
  static const double d40 = -.861888290916712e-03;
  static const double d50 = -.336798553366358e-03;
  static const double d60 = .531307936463992e-03;
  static const double d70 = .344367606892378e-03;
  static const double rt2pin = .398942280401433e0;
  static const double rtpi = 1.77245385090552e0;
  static const double third = .333333333333333e0;
  static const double acc0[3] = {5.e-15, 5.e-7, 5.e-4};
  static const double big[3] = {20.0e0, 14.0e0, 10.0e0};
  static const double d0[13] = {
      .833333333333333e-01,  -.148148148148148e-01, .115740740740741e-02,
      .352733686067019e-03,  -.178755144032922e-03, .391926317852244e-04,
      -.218544851067999e-05, -.185406221071516e-05, .829671134095309e-06,
      -.176659527368261e-06, .670785354340150e-08,  .102618097842403e-07,
      -.438203601845335e-08};
  static const double d1[12] = {
      -.347222222222222e-02, .264550264550265e-02,  -.990226337448560e-03,
      .205761316872428e-03,  -.401877572016461e-06, -.180985503344900e-04,
      .764916091608111e-05,  -.161209008945634e-05, .464712780280743e-08,
      .137863344691572e-06,  -.575254560351770e-07, .119516285997781e-07};
  static const double d2[10] = {-.268132716049383e-02, .771604938271605e-03,
                                .200938786008230e-05,  -.107366532263652e-03,
                                .529234488291201e-04,  -.127606351886187e-04,
                                .342357873409614e-07,  .137219573090629e-05,
                                -.629899213838006e-06, .142806142060642e-06};
  static const double d3[8] = {.229472093621399e-03,  -.469189494395256e-03,
                               .267720632062839e-03,  -.756180167188398e-04,
                               -.239650511386730e-06, .110826541153473e-04,
                               -.567495282699160e-05, .142309007324359e-05};
  static const double d4[6] = {.784039221720067e-03,  -.299072480303190e-03,
                               -.146384525788434e-05, .664149821546512e-04,
                               -.396836504717943e-04, .113757269706784e-04};
  static const double d5[4] = {-.697281375836586e-04, .277275324495939e-03,
                               -.199325705161888e-03, .679778047793721e-04};
  static const double d6[2] = {-.592166437353694e-03, .270878209671804e-03};
  static const double e00[3] = {.25e-3, .25e-1, .14e0};
  static const double x00[3] = {31.0e0, 17.0e0, 9.7e0};
  static const int K1 = 1;
  static const int K2 = 0;
  double a2n, a2nm1, acc, am0, amn, an, an0, apn, b2n, b2nm1, c, c0, c1, c2, c3,
      c4, c5, c6, cma, e, e0, g, h, j, l, r, rta, rtx, s, sum, t, t1, tol, twoa,
      u, w, x0, y, z;
  int i, iop, m, max, n;
  double wk[20], T3;
  int T4, T5;
  double T6, T7;
  e = dpmpar(K1);
  if (*a < 0.0e0 || *x < 0.0e0) {
    goto S430;
  }
  if (*a == 0.0e0 && *x == 0.0e0) {
    goto S430;
  }
  if (*a * *x == 0.0e0) {
    goto S420;
  }
  iop = *ind + 1;
  if (iop != 1 && iop != 2) {
    iop = 3;
  }
  acc = cdflib_fifdmax1(acc0[iop - 1], e);
  e0 = e00[iop - 1];
  x0 = x00[iop - 1];
  if (*a >= 1.0e0) {
    goto S10;
  }
  if (*a == 0.5e0) {
    goto S390;
  }
  if (*x < 1.1e0) {
    goto S160;
  }
  t1 = *a * log(*x) - *x;
  u = *a * exp(t1);
  if (u == 0.0e0) {
    goto S380;
  }
  r = u * (1.0e0 + cdflib_gam1(a));
  goto S250;
S10:
  if (*a >= big[iop - 1]) {
    goto S30;
  }
  if (*a > *x || *x >= x0) {
    goto S20;
  }
  twoa = *a + *a;
  m = cdflib_fifidint(twoa);
  if (twoa != (double)m) {
    goto S20;
  }
  i = m / 2;
  if (*a == (double)i) {
    goto S210;
  }
  goto S220;
S20:
  t1 = *a * log(*x) - *x;
  r = exp(t1) / cdflib_gamma_x(a);
  goto S40;
S30:
  l = *x / *a;
  if (l == 0.0e0) {
    goto S370;
  }
  s = 0.5e0 + (0.5e0 - l);
  z = cdflib_rlog(&l);
  if (z >= 700.0e0 / *a) {
    goto S410;
  }
  y = *a * z;
  rta = sqrt(*a);
  if (fabs(s) <= e0 / rta) {
    goto S330;
  }
  if (fabs(s) <= 0.4e0) {
    goto S270;
  }
  t = pow(1.0e0 / *a, 2.0);
  t1 = (((0.75e0 * t - 1.0e0) * t + 3.5e0) * t - 105.0e0) / (*a * 1260.0e0);
  t1 -= y;
  r = rt2pin * rta * exp(t1);
S40:
  if (r == 0.0e0) {
    goto S420;
  }
  if (*x <= cdflib_fifdmax1(*a, alog10)) {
    goto S50;
  }
  if (*x < x0) {
    goto S250;
  }
  goto S100;
S50:
  apn = *a + 1.0e0;
  t = *x / apn;
  wk[0] = t;
  for (n = 2; n <= 20; n++) {
    apn += 1.0e0;
    t *= (*x / apn);
    if (t <= 1.e-3) {
      goto S70;
    }
    wk[n - 1] = t;
  }
  n = 20;
S70:
  sum = t;
  tol = 0.5e0 * acc;
S80:
  apn += 1.0e0;
  t *= (*x / apn);
  sum += t;
  if (t > tol) {
    goto S80;
  }
  max = n - 1;
  for (m = 1; m <= max; m++) {
    n -= 1;
    sum += wk[n - 1];
  }
  *ans = r / *a * (1.0e0 + sum);
  *qans = 0.5e0 + (0.5e0 - *ans);
  return;
S100:
  amn = *a - 1.0e0;
  t = amn / *x;
  wk[0] = t;
  for (n = 2; n <= 20; n++) {
    amn -= 1.0e0;
    t *= (amn / *x);
    if (fabs(t) <= 1.e-3) {
      goto S120;
    }
    wk[n - 1] = t;
  }
  n = 20;
S120:
  sum = t;
S130:
  if (fabs(t) <= acc) {
    goto S140;
  }
  amn -= 1.0e0;
  t *= (amn / *x);
  sum += t;
  goto S130;
S140:
  max = n - 1;
  for (m = 1; m <= max; m++) {
    n -= 1;
    sum += wk[n - 1];
  }
  *qans = r / *x * (1.0e0 + sum);
  *ans = 0.5e0 + (0.5e0 - *qans);
  return;
S160:
  an = 3.0e0;
  c = *x;
  sum = *x / (*a + 3.0e0);
  tol = 3.0e0 * acc / (*a + 1.0e0);
S170:
  an += 1.0e0;
  c = -(c * (*x / an));
  t = c / (*a + an);
  sum += t;
  if (fabs(t) > tol) {
    goto S170;
  }
  j = *a * *x *
      ((sum / 6.0e0 - 0.5e0 / (*a + 2.0e0)) * *x + 1.0e0 / (*a + 1.0e0));
  z = *a * log(*x);
  h = cdflib_gam1(a);
  g = 1.0e0 + h;
  if (*x < 0.25e0) {
    goto S180;
  }
  if (*a < *x / 2.59e0) {
    goto S200;
  }
  goto S190;
S180:
  if (z > -.13394e0) {
    goto S200;
  }
S190:
  w = exp(z);
  *ans = w * g * (0.5e0 + (0.5e0 - j));
  *qans = 0.5e0 + (0.5e0 - *ans);
  return;
S200:
  l = cdflib_rexp(&z);
  w = 0.5e0 + (0.5e0 + l);
  *qans = (w * j - l) * g - h;
  if (*qans < 0.0e0) {
    goto S380;
  }
  *ans = 0.5e0 + (0.5e0 - *qans);
  return;
S210:
  sum = exp(-*x);
  t = sum;
  n = 1;
  c = 0.0e0;
  goto S230;
S220:
  rtx = sqrt(*x);
  sum = cdflib_error_fc(&K2, &rtx);
  t = exp(-*x) / (rtpi * rtx);
  n = 0;
  c = -0.5e0;
S230:
  if (n == i) {
    goto S240;
  }
  n += 1;
  c += 1.0e0;
  t = *x * t / c;
  sum += t;
  goto S230;
S240:
  *qans = sum;
  *ans = 0.5e0 + (0.5e0 - *qans);
  return;
S250:
  tol = cdflib_fifdmax1(5.0e0 * e, acc);
  a2nm1 = a2n = 1.0e0;
  b2nm1 = *x;
  b2n = *x + (1.0e0 - *a);
  c = 1.0e0;
S260:
  a2nm1 = *x * a2n + c * a2nm1;
  b2nm1 = *x * b2n + c * b2nm1;
  am0 = a2nm1 / b2nm1;
  c += 1.0e0;
  cma = c - *a;
  a2n = a2nm1 + cma * a2n;
  b2n = b2nm1 + cma * b2n;
  an0 = a2n / b2n;
  if (fabs(an0 - am0) >= tol * an0) {
    goto S260;
  }
  *qans = r * an0;
  *ans = 0.5e0 + (0.5e0 - *qans);
  return;
S270:
  if (fabs(s) <= 2.0e0 * e && *a * e * e > 3.28e-3) {
    goto S430;
  }
  c = exp(-y);
  T3 = sqrt(y);
  w = 0.5e0 * cdflib_error_fc(&K1, &T3);
  u = 1.0e0 / *a;
  z = sqrt(z + z);
  if (l < 1.0e0) {
    z = -z;
  }
  T4 = iop - 2;
  if (T4 < 0) {
    goto S280;
  } else if (T4 == 0) {
    goto S290;
  } else {
    goto S300;
  }
S280:
  if (fabs(s) <= 1.e-3) {
    goto S340;
  }
  c0 =
      ((((((((((((d0[12] * z + d0[11]) * z + d0[10]) * z + d0[9]) * z + d0[8]) *
                  z +
              d0[7]) *
                 z +
             d0[6]) *
                z +
            d0[5]) *
               z +
           d0[4]) *
              z +
          d0[3]) *
             z +
         d0[2]) *
            z +
        d0[1]) *
           z +
       d0[0]) *
          z -
      third;
  c1 = (((((((((((d1[11] * z + d1[10]) * z + d1[9]) * z + d1[8]) * z + d1[7]) *
                  z +
              d1[6]) *
                 z +
             d1[5]) *
                z +
            d1[4]) *
               z +
           d1[3]) *
              z +
          d1[2]) *
             z +
         d1[1]) *
            z +
        d1[0]) *
           z +
       d10;
  c2 = (((((((((d2[9] * z + d2[8]) * z + d2[7]) * z + d2[6]) * z + d2[5]) * z +
            d2[4]) *
               z +
           d2[3]) *
              z +
          d2[2]) *
             z +
         d2[1]) *
            z +
        d2[0]) *
           z +
       d20;
  c3 = (((((((d3[7] * z + d3[6]) * z + d3[5]) * z + d3[4]) * z + d3[3]) * z +
          d3[2]) *
             z +
         d3[1]) *
            z +
        d3[0]) *
           z +
       d30;
  c4 = (((((d4[5] * z + d4[4]) * z + d4[3]) * z + d4[2]) * z + d4[1]) * z +
        d4[0]) *
           z +
       d40;
  c5 = (((d5[3] * z + d5[2]) * z + d5[1]) * z + d5[0]) * z + d50;
  c6 = (d6[1] * z + d6[0]) * z + d60;
  t = ((((((d70 * u + c6) * u + c5) * u + c4) * u + c3) * u + c2) * u + c1) *
          u +
      c0;
  goto S310;
S290:
  c0 = (((((d0[5] * z + d0[4]) * z + d0[3]) * z + d0[2]) * z + d0[1]) * z +
        d0[0]) *
           z -
       third;
  c1 = (((d1[3] * z + d1[2]) * z + d1[1]) * z + d1[0]) * z + d10;
  c2 = d2[0] * z + d20;
  t = (c2 * u + c1) * u + c0;
  goto S310;
S300:
  t = ((d0[2] * z + d0[1]) * z + d0[0]) * z - third;
S310:
  if (l < 1.0e0) {
    goto S320;
  }
  *qans = c * (w + rt2pin * t / rta);
  *ans = 0.5e0 + (0.5e0 - *qans);
  return;
S320:
  *ans = c * (w - rt2pin * t / rta);
  *qans = 0.5e0 + (0.5e0 - *ans);
  return;
S330:
  if (*a * e * e > 3.28e-3) {
    goto S430;
  }
  c = 0.5e0 + (0.5e0 - y);
  w = (0.5e0 - sqrt(y) * (0.5e0 + (0.5e0 - y / 3.0e0)) / rtpi) / c;
  u = 1.0e0 / *a;
  z = sqrt(z + z);
  if (l < 1.0e0) {
    z = -z;
  }
  T5 = iop - 2;
  if (T5 < 0) {
    goto S340;
  } else if (T5 == 0) {
    goto S350;
  } else {
    goto S360;
  }
S340:
  c0 = ((((((d0[6] * z + d0[5]) * z + d0[4]) * z + d0[3]) * z + d0[2]) * z +
         d0[1]) *
            z +
        d0[0]) *
           z -
       third;
  c1 = (((((d1[5] * z + d1[4]) * z + d1[3]) * z + d1[2]) * z + d1[1]) * z +
        d1[0]) *
           z +
       d10;
  c2 = ((((d2[4] * z + d2[3]) * z + d2[2]) * z + d2[1]) * z + d2[0]) * z + d20;
  c3 = (((d3[3] * z + d3[2]) * z + d3[1]) * z + d3[0]) * z + d30;
  c4 = (d4[1] * z + d4[0]) * z + d40;
  c5 = (d5[1] * z + d5[0]) * z + d50;
  c6 = d6[0] * z + d60;
  t = ((((((d70 * u + c6) * u + c5) * u + c4) * u + c3) * u + c2) * u + c1) *
          u +
      c0;
  goto S310;
S350:
  c0 = (d0[1] * z + d0[0]) * z - third;
  c1 = d1[0] * z + d10;
  t = (d20 * u + c1) * u + c0;
  goto S310;
S360:
  t = d0[0] * z - third;
  goto S310;
S370:
  *ans = 0.0e0;
  *qans = 1.0e0;
  return;
S380:
  *ans = 1.0e0;
  *qans = 0.0e0;
  return;
S390:
  if (*x >= 0.25e0) {
    goto S400;
  }
  T6 = sqrt(*x);
  *ans = cdflib_error_f(&T6);
  *qans = 0.5e0 + (0.5e0 - *ans);
  return;
S400:
  T7 = sqrt(*x);
  *qans = cdflib_error_fc(&K2, &T7);
  *ans = 0.5e0 + (0.5e0 - *qans);
  return;
S410:
  if (fabs(s) <= 2.0e0 * e) {
    goto S430;
  }
S420:
  if (*x <= *a) {
    goto S370;
  }
  goto S380;
S430:
  *ans = 2.0e0;
  return;
}


x86 assembly (clang, -O0):
<cdflib_gamma_inc>:
push   %rbp
mov    %rsp,%rbp
sub    $0x280,%rsp
mov    %rdi,-0x8(%rbp)
mov    %rsi,-0x10(%rbp)
mov    %rdx,-0x18(%rbp)
mov    %rcx,-0x20(%rbp)
mov    %r8,-0x28(%rbp)
mov    $0x1,%edi
mov    $0x0,%al
call   1050 <dpmpar@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0xc8(%rbp)
ff
mov    -0x8(%rbp),%rax
xorps  %xmm0,%xmm0
ucomisd (%rax),%xmm0
ja     1229 <cdflib_gamma_inc+0x59>
mov    -0x10(%rbp),%rax
xorps  %xmm0,%xmm0
ucomisd (%rax),%xmm0
jbe    122e <cdflib_gamma_inc+0x5e>
jmp    35ec <cdflib_gamma_inc+0x241c>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1269 <cdflib_gamma_inc+0x99>
jp     1269 <cdflib_gamma_inc+0x99>
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1269 <cdflib_gamma_inc+0x99>
jp     1269 <cdflib_gamma_inc+0x99>
jmp    35ec <cdflib_gamma_inc+0x241c>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
mov    -0x10(%rbp),%rax
mulsd  (%rax),%xmm0
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1291 <cdflib_gamma_inc+0xc1>
jp     1291 <cdflib_gamma_inc+0xc1>
jmp    35c8 <cdflib_gamma_inc+0x23f8>
mov    -0x28(%rbp),%rax
mov    (%rax),%eax
add    $0x1,%eax
mov    %eax,-0x168(%rbp)
cmpl   $0x1,-0x168(%rbp)
je     12c4 <cdflib_gamma_inc+0xf4>
cmpl   $0x2,-0x168(%rbp)
je     12c4 <cdflib_gamma_inc+0xf4>
movl   $0x3,-0x168(%rbp)
mov    -0x168(%rbp),%eax
sub    $0x1,%eax
movslq %eax,%rcx
lea    0x2e99(%rip),%rax
movsd  (%rax,%rcx,8),%xmm0
movsd  -0xc8(%rbp),%xmm1
ff
mov    $0x2,%al
call   10a0 <cdflib_fifdmax1@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x40(%rbp)
mov    -0x168(%rbp),%eax
sub    $0x1,%eax
movslq %eax,%rcx
lea    0x3069(%rip),%rax
movsd  (%rax,%rcx,8),%xmm0
movsd  %xmm0,-0xd0(%rbp)
ff
mov    -0x168(%rbp),%eax
sub    $0x1,%eax
movslq %eax,%rcx
lea    0x3069(%rip),%rax
movsd  (%rax,%rcx,8),%xmm0
movsd  %xmm0,-0x150(%rbp)
ff
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x2cbc(%rip),%xmm1
ucomisd %xmm1,%xmm0
jb     1353 <cdflib_gamma_inc+0x183>
jmp    1482 <cdflib_gamma_inc+0x2b2>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x2ca5(%rip),%xmm1
ucomisd %xmm1,%xmm0
jne    1378 <cdflib_gamma_inc+0x1a8>
jp     1378 <cdflib_gamma_inc+0x1a8>
jmp    34bb <cdflib_gamma_inc+0x22eb>
mov    -0x10(%rbp),%rax
movsd  0x2c8c(%rip),%xmm0
ucomisd (%rax),%xmm0
jbe    1393 <cdflib_gamma_inc+0x1c3>
jmp    1cf9 <cdflib_gamma_inc+0xb29>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0x250(%rbp)
ff
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
call   10b0 <log@plt>
movaps %xmm0,%xmm2
movsd  -0x250(%rbp),%xmm0
ff
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x128(%rbp)
ff
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0x248(%rbp)
ff
movsd  -0x128(%rbp),%xmm0
ff
call   1080 <exp@plt>
movaps %xmm0,%xmm1
movsd  -0x248(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x140(%rbp)
ff
movsd  -0x140(%rbp),%xmm0
ff
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    143e <cdflib_gamma_inc+0x26e>
jp     143e <cdflib_gamma_inc+0x26e>
jmp    349b <cdflib_gamma_inc+0x22cb>
movsd  -0x140(%rbp),%xmm0
ff
movsd  %xmm0,-0x258(%rbp)
ff
mov    -0x8(%rbp),%rdi
mov    $0x0,%al
call   1040 <cdflib_gam1@plt>
movsd  -0x258(%rbp),%xmm0
ff
cvtsi2sd %eax,%xmm2
movsd  0x2b93(%rip),%xmm1
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0xf8(%rbp)
ff
jmp    223a <cdflib_gamma_inc+0x106a>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
mov    -0x168(%rbp),%eax
sub    $0x1,%eax
movslq %eax,%rcx
lea    0x2cf3(%rip),%rax
ucomisd (%rax,%rcx,8),%xmm0
jb     14ad <cdflib_gamma_inc+0x2dd>
jmp    1607 <cdflib_gamma_inc+0x437>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
mov    -0x10(%rbp),%rax
ucomisd (%rax),%xmm0
ja     14d9 <cdflib_gamma_inc+0x309>
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
ucomisd -0x150(%rbp),%xmm0
ff
jb     14de <cdflib_gamma_inc+0x30e>
jmp    1573 <cdflib_gamma_inc+0x3a3>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
mov    -0x8(%rbp),%rax
addsd  (%rax),%xmm0
movsd  %xmm0,-0x138(%rbp)
ff
movsd  -0x138(%rbp),%xmm0
ff
mov    $0x1,%al
call   1060 <cdflib_fifidint@plt>
mov    %eax,-0x16c(%rbp)
movsd  -0x138(%rbp),%xmm0
ff
cvtsi2sdl -0x16c(%rbp),%xmm1
ff
ucomisd %xmm1,%xmm0
jne    1530 <cdflib_gamma_inc+0x360>
jp     1530 <cdflib_gamma_inc+0x360>
jmp    1535 <cdflib_gamma_inc+0x365>
jmp    1573 <cdflib_gamma_inc+0x3a3>
mov    -0x16c(%rbp),%eax
mov    $0x2,%ecx
cltd
idiv   %ecx
mov    %eax,-0x164(%rbp)
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
cvtsi2sdl -0x164(%rbp),%xmm1
ff
ucomisd %xmm1,%xmm0
jne    156e <cdflib_gamma_inc+0x39e>
jp     156e <cdflib_gamma_inc+0x39e>
jmp    20af <cdflib_gamma_inc+0xedf>
jmp    2102 <cdflib_gamma_inc+0xf32>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0x268(%rbp)
ff
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
call   10b0 <log@plt>
movaps %xmm0,%xmm2
movsd  -0x268(%rbp),%xmm0
ff
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x128(%rbp)
ff
movsd  -0x128(%rbp),%xmm0
ff
call   1080 <exp@plt>
movsd  %xmm0,-0x260(%rbp)
ff
mov    -0x8(%rbp),%rdi
mov    $0x0,%al
call   1090 <cdflib_gamma_x@plt>
movsd  -0x260(%rbp),%xmm0
ff
cvtsi2sd %eax,%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0xf8(%rbp)
ff
jmp    1816 <cdflib_gamma_inc+0x646>
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
mov    -0x8(%rbp),%rax
divsd  (%rax),%xmm0
movsd  %xmm0,-0xf0(%rbp)
ff
movsd  -0xf0(%rbp),%xmm0
ff
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    163f <cdflib_gamma_inc+0x46f>
jp     163f <cdflib_gamma_inc+0x46f>
jmp    347b <cdflib_gamma_inc+0x22ab>
movsd  0x29c1(%rip),%xmm1
subsd  -0xf0(%rbp),%xmm1
ff
movsd  0x29b1(%rip),%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x110(%rbp)
ff
lea    -0xf0(%rbp),%rdi
mov    $0x0,%al
call   1030 <cdflib_rlog@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x160(%rbp)
ff
movsd  -0x160(%rbp),%xmm0
ff
mov    -0x8(%rbp),%rax
movsd  0x29c7(%rip),%xmm1
divsd  (%rax),%xmm1
ucomisd %xmm1,%xmm0
jb     16a4 <cdflib_gamma_inc+0x4d4>
jmp    3591 <cdflib_gamma_inc+0x23c1>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
mulsd  -0x160(%rbp),%xmm0
ff
movsd  %xmm0,-0x158(%rbp)
ff
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
call   10d0 <sqrt@plt>
movsd  %xmm0,-0x100(%rbp)
ff
movsd  -0x110(%rbp),%xmm1
ff
movaps 0x2a20(%rip),%xmm0
pand   %xmm0,%xmm1
movsd  -0xd0(%rbp),%xmm0
ff
divsd  -0x100(%rbp),%xmm0
ff
ucomisd %xmm1,%xmm0
jb     1703 <cdflib_gamma_inc+0x533>
jmp    2e8d <cdflib_gamma_inc+0x1cbd>
movsd  -0x110(%rbp),%xmm1
ff
movaps 0x29ee(%rip),%xmm0
pand   %xmm0,%xmm1
movsd  0x2942(%rip),%xmm0
ucomisd %xmm1,%xmm0
jb     172d <cdflib_gamma_inc+0x55d>
jmp    23f1 <cdflib_gamma_inc+0x1221>
mov    -0x8(%rbp),%rax
movsd  0x28c7(%rip),%xmm0
divsd  (%rax),%xmm0
movsd  0x28e3(%rip),%xmm1
call   10c0 <pow@plt>
movsd  %xmm0,-0x120(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
movsd  0x2926(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x2922(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  -0x120(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0x28fa(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  -0x120(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0x28da(%rip),%xmm1
addsd  %xmm1,%xmm0
mov    -0x8(%rbp),%rax
movsd  0x28c2(%rip),%xmm1
mulsd  (%rax),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x128(%rbp)
ff
movsd  -0x158(%rbp),%xmm1
ff
movsd  -0x128(%rbp),%xmm0
ff
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x128(%rbp)
ff
movsd  0x2886(%rip),%xmm0
mulsd  -0x100(%rbp),%xmm0
ff
movsd  %xmm0,-0x270(%rbp)
ff
movsd  -0x128(%rbp),%xmm0
ff
call   1080 <exp@plt>
movaps %xmm0,%xmm1
movsd  -0x270(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0xf8(%rbp)
ff
movsd  -0xf8(%rbp),%xmm0
ff
xorps  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1836 <cdflib_gamma_inc+0x666>
jp     1836 <cdflib_gamma_inc+0x666>
jmp    35c8 <cdflib_gamma_inc+0x23f8>
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0x278(%rbp)
ff
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x2842(%rip),%xmm1
mov    $0x2,%al
call   10a0 <cdflib_fifdmax1@plt>
movsd  -0x278(%rbp),%xmm1
ff
cvtsi2sd %eax,%xmm0
ucomisd %xmm1,%xmm0
jb     1878 <cdflib_gamma_inc+0x6a8>
jmp    189c <cdflib_gamma_inc+0x6cc>
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm1
movsd  -0x150(%rbp),%xmm0
ff
ucomisd %xmm1,%xmm0
jbe    1897 <cdflib_gamma_inc+0x6c7>
jmp    223a <cdflib_gamma_inc+0x106a>
jmp    1abf <cdflib_gamma_inc+0x8ef>
mov    -0x8(%rbp),%rax
movsd  0x2758(%rip),%xmm0
addsd  (%rax),%xmm0
movsd  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
divsd  -0x68(%rbp),%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
movsd  %xmm0,-0x220(%rbp)
ff
movl   $0x2,-0x174(%rbp)
cmpl   $0x14,-0x174(%rbp)
jg     1967 <cdflib_gamma_inc+0x797>
movsd  0x270b(%rip),%xmm0
addsd  -0x68(%rbp),%xmm0
movsd  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
divsd  -0x68(%rbp),%xmm0
mulsd  -0x120(%rbp),%xmm0
ff
movsd  %xmm0,-0x120(%rbp)
ff
movsd  0x277c(%rip),%xmm0
ucomisd -0x120(%rbp),%xmm0
ff
jb     1937 <cdflib_gamma_inc+0x767>
jmp    1971 <cdflib_gamma_inc+0x7a1>
movsd  -0x120(%rbp),%xmm0
ff
mov    -0x174(%rbp),%eax
sub    $0x1,%eax
cltq
movsd  %xmm0,-0x220(%rbp,%rax,8)
ff ff
mov    -0x174(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x174(%rbp)
jmp    18e0 <cdflib_gamma_inc+0x710>
movl   $0x14,-0x174(%rbp)
movsd  -0x120(%rbp),%xmm0
ff
movsd  %xmm0,-0x118(%rbp)
ff
movsd  0x267f(%rip),%xmm0
mulsd  -0x40(%rbp),%xmm0
movsd  %xmm0,-0x130(%rbp)
ff
movsd  0x2662(%rip),%xmm0
addsd  -0x68(%rbp),%xmm0
movsd  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
divsd  -0x68(%rbp),%xmm0
mulsd  -0x120(%rbp),%xmm0
ff
movsd  %xmm0,-0x120(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
addsd  -0x118(%rbp),%xmm0
ff
movsd  %xmm0,-0x118(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
ucomisd -0x130(%rbp),%xmm0
ff
jbe    19f8 <cdflib_gamma_inc+0x828>
jmp    1996 <cdflib_gamma_inc+0x7c6>
mov    -0x174(%rbp),%eax
sub    $0x1,%eax
mov    %eax,-0x170(%rbp)
movl   $0x1,-0x16c(%rbp)
mov    -0x16c(%rbp),%eax
cmp    -0x170(%rbp),%eax
jg     1a6a <cdflib_gamma_inc+0x89a>
mov    -0x174(%rbp),%eax
sub    $0x1,%eax
mov    %eax,-0x174(%rbp)
mov    -0x174(%rbp),%eax
sub    $0x1,%eax
cltq
movsd  -0x220(%rbp,%rax,8),%xmm0
ff ff
addsd  -0x118(%rbp),%xmm0
ff
movsd  %xmm0,-0x118(%rbp)
ff
mov    -0x16c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x16c(%rbp)
jmp    1a11 <cdflib_gamma_inc+0x841>
movsd  -0xf8(%rbp),%xmm0
ff
mov    -0x8(%rbp),%rax
divsd  (%rax),%xmm0
movsd  0x257e(%rip),%xmm1
addsd  -0x118(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
mov    -0x18(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x18(%rbp),%rax
movsd  0x2566(%rip),%xmm1
subsd  (%rax),%xmm1
movsd  0x255a(%rip),%xmm0
addsd  %xmm1,%xmm0
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
jmp    35fc <cdflib_gamma_inc+0x242c>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x2531(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  -0x50(%rbp),%xmm0
mov    -0x10(%rbp),%rax
divsd  (%rax),%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
movsd  %xmm0,-0x220(%rbp)
ff
movl   $0x2,-0x174(%rbp)
cmpl   $0x14,-0x174(%rbp)
jg     1ba1 <cdflib_gamma_inc+0x9d1>
movsd  -0x50(%rbp),%xmm0
movsd  0x24df(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  -0x50(%rbp),%xmm0
mov    -0x10(%rbp),%rax
divsd  (%rax),%xmm0
mulsd  -0x120(%rbp),%xmm0
ff
movsd  %xmm0,-0x120(%rbp)
ff
movsd  -0x120(%rbp),%xmm1
ff
movaps 0x25aa(%rip),%xmm0
pand   %xmm0,%xmm1
movsd  0x253e(%rip),%xmm0
ucomisd %xmm1,%xmm0
jb     1b71 <cdflib_gamma_inc+0x9a1>
jmp    1bab <cdflib_gamma_inc+0x9db>
movsd  -0x120(%rbp),%xmm0
ff
mov    -0x174(%rbp),%eax
sub    $0x1,%eax
cltq
movsd  %xmm0,-0x220(%rbp,%rax,8)
ff ff
mov    -0x174(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x174(%rbp)
jmp    1b07 <cdflib_gamma_inc+0x937>
movl   $0x14,-0x174(%rbp)
movsd  -0x120(%rbp),%xmm0
ff
movsd  %xmm0,-0x118(%rbp)
ff
movsd  -0x120(%rbp),%xmm1
ff
movaps 0x2536(%rip),%xmm0
pand   %xmm0,%xmm1
movsd  -0x40(%rbp),%xmm0
ucomisd %xmm1,%xmm0
jb     1be2 <cdflib_gamma_inc+0xa12>
jmp    1c32 <cdflib_gamma_inc+0xa62>
movsd  -0x50(%rbp),%xmm0
movsd  0x2411(%rip),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  -0x50(%rbp),%xmm0
mov    -0x10(%rbp),%rax
divsd  (%rax),%xmm0
mulsd  -0x120(%rbp),%xmm0
ff
movsd  %xmm0,-0x120(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
addsd  -0x118(%rbp),%xmm0
ff
movsd  %xmm0,-0x118(%rbp)
ff
jmp    1bbb <cdflib_gamma_inc+0x9eb>
mov    -0x174(%rbp),%eax
sub    $0x1,%eax
mov    %eax,-0x170(%rbp)
movl   $0x1,-0x16c(%rbp)
mov    -0x16c(%rbp),%eax
cmp    -0x170(%rbp),%eax
jg     1ca4 <cdflib_gamma_inc+0xad4>
mov    -0x174(%rbp),%eax
sub    $0x1,%eax
mov    %eax,-0x174(%rbp)
mov    -0x174(%rbp),%eax
sub    $0x1,%eax
cltq
movsd  -0x220(%rbp,%rax,8),%xmm0
ff ff
addsd  -0x118(%rbp),%xmm0
ff
movsd  %xmm0,-0x118(%rbp)
ff
mov    -0x16c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x16c(%rbp)
jmp    1c4b <cdflib_gamma_inc+0xa7b>
movsd  -0xf8(%rbp),%xmm0
ff
mov    -0x10(%rbp),%rax
divsd  (%rax),%xmm0
movsd  0x2344(%rip),%xmm1
addsd  -0x118(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x20(%rbp),%rax
movsd  0x232c(%rip),%xmm1
subsd  (%rax),%xmm1
movsd  0x2320(%rip),%xmm0
addsd  %xmm1,%xmm0
mov    -0x18(%rbp),%rax
movsd  %xmm0,(%rax)
jmp    35fc <cdflib_gamma_inc+0x242c>
movsd  0x2317(%rip),%xmm0
movsd  %xmm0,-0x58(%rbp)
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0x80(%rbp)
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
mov    -0x8(%rbp),%rax
movsd  0x22f1(%rip),%xmm1
addsd  (%rax),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x118(%rbp)
ff
movsd  0x22d9(%rip),%xmm0
mulsd  -0x40(%rbp),%xmm0
mov    -0x8(%rbp),%rax
movsd  0x22b0(%rip),%xmm1
addsd  (%rax),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x130(%rbp)
ff
movsd  0x2298(%rip),%xmm0
addsd  -0x58(%rbp),%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  -0x80(%rbp),%xmm0
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm1
divsd  -0x58(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x80(%rbp)
movsd  -0x80(%rbp),%xmm0
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm1
addsd  -0x58(%rbp),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
addsd  -0x118(%rbp),%xmm0
ff
movsd  %xmm0,-0x118(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
movaps 0x2317(%rip),%xmm1
pand   %xmm1,%xmm0
ucomisd -0x130(%rbp),%xmm0
ff
jbe    1e00 <cdflib_gamma_inc+0xc30>
jmp    1d60 <cdflib_gamma_inc+0xb90>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
mov    -0x10(%rbp),%rax
mulsd  (%rax),%xmm0
movsd  -0x118(%rbp),%xmm1
ff
movsd  0x2210(%rip),%xmm2
divsd  %xmm2,%xmm1
mov    -0x8(%rbp),%rax
movsd  0x21f8(%rip),%xmm3
addsd  (%rax),%xmm3
movsd  0x21cc(%rip),%xmm2
divsd  %xmm3,%xmm2
subsd  %xmm2,%xmm1
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm3
mov    -0x8(%rbp),%rax
movsd  0x21a8(%rip),%xmm4
addsd  (%rax),%xmm4
movsd  0x219c(%rip),%xmm2
divsd  %xmm4,%xmm2
mulsd  %xmm3,%xmm1
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0xe8(%rbp)
ff
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0x280(%rbp)
ff
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
call   10b0 <log@plt>
movaps %xmm0,%xmm1
movsd  -0x280(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x160(%rbp)
ff
mov    -0x8(%rbp),%rdi
mov    $0x0,%al
call   1040 <cdflib_gam1@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0xe0(%rbp)
ff
movsd  0x2131(%rip),%xmm0
addsd  -0xe0(%rbp),%xmm0
ff
movsd  %xmm0,-0xd8(%rbp)
ff
mov    -0x10(%rbp),%rax
movsd  0x2135(%rip),%xmm0
ucomisd (%rax),%xmm0
jbe    1efa <cdflib_gamma_inc+0xd2a>
jmp    1f2a <cdflib_gamma_inc+0xd5a>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm1
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x2126(%rip),%xmm2
divsd  %xmm2,%xmm0
ucomisd %xmm1,%xmm0
jbe    1f25 <cdflib_gamma_inc+0xd55>
jmp    1fc4 <cdflib_gamma_inc+0xdf4>
jmp    1f4e <cdflib_gamma_inc+0xd7e>
movsd  -0x160(%rbp),%xmm0
ff
movsd  0x2106(%rip),%xmm1
ucomisd %xmm1,%xmm0
jbe    1f49 <cdflib_gamma_inc+0xd79>
jmp    1fc4 <cdflib_gamma_inc+0xdf4>
jmp    1f4e <cdflib_gamma_inc+0xd7e>
movsd  -0x160(%rbp),%xmm0
ff
call   1080 <exp@plt>
movsd  %xmm0,-0x148(%rbp)
ff
movsd  -0x148(%rbp),%xmm0
ff
mulsd  -0xd8(%rbp),%xmm0
ff
movsd  0x208d(%rip),%xmm2
subsd  -0xe8(%rbp),%xmm2
ff
movsd  0x207d(%rip),%xmm1
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
mov    -0x18(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x18(%rbp),%rax
movsd  0x2061(%rip),%xmm1
subsd  (%rax),%xmm1
movsd  0x2055(%rip),%xmm0
addsd  %xmm1,%xmm0
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
jmp    35fc <cdflib_gamma_inc+0x242c>
lea    -0x160(%rbp),%rdi
mov    $0x0,%al
call   1070 <cdflib_rexp@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0xf0(%rbp)
ff
movsd  0x2022(%rip),%xmm1
addsd  -0xf0(%rbp),%xmm1
ff
movsd  0x2012(%rip),%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x148(%rbp)
movsd  -0x148(%rbp),%xmm0
movsd  -0xe8(%rbp),%xmm2
ff
movsd  -0xf0(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0xd8(%rbp),%xmm2
ff
movsd  -0xe0(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x20(%rbp),%rax
xorps  %xmm0,%xmm0
ucomisd (%rax),%xmm0
jbe    2086 <cdflib_gamma_inc+0xeb6>
jmp    349b <cdflib_gamma_inc+0x22cb>
mov    -0x20(%rbp),%rax
movsd  0x1f76(%rip),%xmm1
subsd  (%rax),%xmm1
movsd  0x1f6a(%rip),%xmm0
addsd  %xmm1,%xmm0
mov    -0x18(%rbp),%rax
movsd  %xmm0,(%rax)
jmp    35fc <cdflib_gamma_inc+0x242c>
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
call   1080 <exp@plt>
movsd  %xmm0,-0x118(%rbp)
ff
movsd  -0x118(%rbp),%xmm0
ff
movsd  %xmm0,-0x120(%rbp)
ff
movl   $0x1,-0x174(%rbp)
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x80(%rbp)
jmp    218f <cdflib_gamma_inc+0xfbf>
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
call   10d0 <sqrt@plt>
movsd  %xmm0,-0x108(%rbp)
ff
lea    0x228e(%rip),%rdi
lea    -0x108(%rbp),%rsi
mov    $0x0,%al
call   10e0 <cdflib_error_fc@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x118(%rbp)
ff
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
call   1080 <exp@plt>
movsd  0x1eec(%rip),%xmm1
mulsd  -0x108(%rbp),%xmm1
ff
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
movl   $0x0,-0x174(%rbp)
movsd  0x1ebe(%rip),%xmm0
movsd  %xmm0,-0x80(%rbp)
mov    -0x174(%rbp),%eax
cmp    -0x164(%rbp),%eax
jne    21a6 <cdflib_gamma_inc+0xfd6>
jmp    2201 <cdflib_gamma_inc+0x1031>
mov    -0x174(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x174(%rbp)
movsd  0x1e43(%rip),%xmm0
addsd  -0x80(%rbp),%xmm0
movsd  %xmm0,-0x80(%rbp)
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
mulsd  -0x120(%rbp),%xmm0
ff
divsd  -0x80(%rbp),%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
addsd  -0x118(%rbp),%xmm0
ff
movsd  %xmm0,-0x118(%rbp)
ff
jmp    218f <cdflib_gamma_inc+0xfbf>
movsd  -0x118(%rbp),%xmm0
ff
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x20(%rbp),%rax
movsd  0x1deb(%rip),%xmm1
subsd  (%rax),%xmm1
movsd  0x1ddf(%rip),%xmm0
addsd  %xmm1,%xmm0
mov    -0x18(%rbp),%rax
movsd  %xmm0,(%rax)
jmp    35fc <cdflib_gamma_inc+0x242c>
movsd  0x1e66(%rip),%xmm0
mulsd  -0xc8(%rbp),%xmm0
ff
movsd  -0x40(%rbp),%xmm1
mov    $0x2,%al
call   10a0 <cdflib_fifdmax1@plt>
cvtsi2sd %eax,%xmm0
movsd  %xmm0,-0x130(%rbp)
ff
movsd  0x1d96(%rip),%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  0x1d89(%rip),%xmm0
movsd  %xmm0,-0x38(%rbp)
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0x78(%rbp)
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
mov    -0x8(%rbp),%rax
movsd  0x1d63(%rip),%xmm1
subsd  (%rax),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x70(%rbp)
movsd  0x1d4e(%rip),%xmm0
movsd  %xmm0,-0x80(%rbp)
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
movsd  -0x30(%rbp),%xmm2
movsd  -0x80(%rbp),%xmm1
mulsd  -0x38(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x38(%rbp)
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
movsd  -0x70(%rbp),%xmm2
movsd  -0x80(%rbp),%xmm1
mulsd  -0x78(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x78(%rbp)
movsd  -0x38(%rbp),%xmm0
divsd  -0x78(%rbp),%xmm0
movsd  %xmm0,-0x48(%rbp)
movsd  0x1cea(%rip),%xmm0
addsd  -0x80(%rbp),%xmm0
movsd  %xmm0,-0x80(%rbp)
movsd  -0x80(%rbp),%xmm0
mov    -0x8(%rbp),%rax
subsd  (%rax),%xmm0
movsd  %xmm0,-0xc0(%rbp)
ff
movsd  -0x38(%rbp),%xmm1
movsd  -0xc0(%rbp),%xmm0
ff
movsd  -0x30(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x30(%rbp)
movsd  -0x78(%rbp),%xmm1
movsd  -0xc0(%rbp),%xmm0
ff
movsd  -0x70(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x70(%rbp)
movsd  -0x30(%rbp),%xmm0
divsd  -0x70(%rbp),%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  -0x60(%rbp),%xmm0
subsd  -0x48(%rbp),%xmm0
movaps 0x1d6d(%rip),%xmm1
pand   %xmm1,%xmm0
movsd  -0x130(%rbp),%xmm1
ff
mulsd  -0x60(%rbp),%xmm1
ucomisd %xmm1,%xmm0
jb     23b3 <cdflib_gamma_inc+0x11e3>
jmp    22b7 <cdflib_gamma_inc+0x10e7>
movsd  -0xf8(%rbp),%xmm0
ff
mulsd  -0x60(%rbp),%xmm0
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x20(%rbp),%rax
movsd  0x1c34(%rip),%xmm1
subsd  (%rax),%xmm1
movsd  0x1c28(%rip),%xmm0
addsd  %xmm1,%xmm0
mov    -0x18(%rbp),%rax
movsd  %xmm0,(%rax)
jmp    35fc <cdflib_gamma_inc+0x242c>
movsd  -0x110(%rbp),%xmm1
ff
movaps 0x1d00(%rip),%xmm0
pand   %xmm0,%xmm1
movsd  0x1c1c(%rip),%xmm0
mulsd  -0xc8(%rbp),%xmm0
ff
ucomisd %xmm1,%xmm0
jb     244d <cdflib_gamma_inc+0x127d>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
mulsd  -0xc8(%rbp),%xmm0
ff
mulsd  -0xc8(%rbp),%xmm0
ff
movsd  0x1c72(%rip),%xmm1
ucomisd %xmm1,%xmm0
jbe    244d <cdflib_gamma_inc+0x127d>
jmp    35ec <cdflib_gamma_inc+0x241c>
movsd  -0x158(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
call   1080 <exp@plt>
movsd  %xmm0,-0x80(%rbp)
movsd  -0x158(%rbp),%xmm0
ff
call   10d0 <sqrt@plt>
movsd  %xmm0,-0x228(%rbp)
ff
lea    0x1f16(%rip),%rdi
lea    -0x228(%rbp),%rsi
mov    $0x0,%al
call   10e0 <cdflib_error_fc@plt>
cvtsi2sd %eax,%xmm1
movsd  0x1b5c(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
mov    -0x8(%rbp),%rax
movsd  0x1b3c(%rip),%xmm0
divsd  (%rax),%xmm0
movsd  %xmm0,-0x140(%rbp)
ff
movsd  -0x160(%rbp),%xmm0
ff
addsd  -0x160(%rbp),%xmm0
ff
call   10d0 <sqrt@plt>
movsd  %xmm0,-0x160(%rbp)
ff
movsd  0x1b0b(%rip),%xmm0
ucomisd -0xf0(%rbp),%xmm0
ff
jbe    252a <cdflib_gamma_inc+0x135a>
movsd  -0x160(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x160(%rbp)
ff
mov    -0x168(%rbp),%eax
sub    $0x2,%eax
mov    %eax,-0x22c(%rbp)
cmpl   $0x0,-0x22c(%rbp)
jge    254b <cdflib_gamma_inc+0x137b>
jmp    2562 <cdflib_gamma_inc+0x1392>
cmpl   $0x0,-0x22c(%rbp)
jne    255d <cdflib_gamma_inc+0x138d>
jmp    2be1 <cdflib_gamma_inc+0x1a11>
jmp    2d5e <cdflib_gamma_inc+0x1b8e>
movsd  -0x110(%rbp),%xmm1
ff
movaps 0x1b8f(%rip),%xmm0
pand   %xmm0,%xmm1
movsd  0x1b23(%rip),%xmm0
ucomisd %xmm1,%xmm0
jb     258c <cdflib_gamma_inc+0x13bc>
jmp    2fec <cdflib_gamma_inc+0x1e1c>
movsd  0x1c7c(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1c64(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1c44(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1c24(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1c04(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1be4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1bc4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1ba4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1b84(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1b64(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1b44(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1b24(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1b04(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0x19f0(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
movsd  0x1b9c(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1b84(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1b64(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1b44(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1b24(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1b04(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1ae4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1ac4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1aa4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1a84(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1a64(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1a44(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0x18d0(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x90(%rbp)
ff
movsd  0x1abc(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1aa4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1a84(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1a64(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1a44(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1a24(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1a04(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x19e4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x19c4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x19a4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0x17c8(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x98(%rbp)
ff
movsd  0x19fc(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x19e4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x19c4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x19a4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1984(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1964(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1944(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1924(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0x1728(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xa0(%rbp)
ff
movsd  0x195c(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1944(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1924(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1904(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x18e4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x18c4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0x1680(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xa8(%rbp)
ff
movsd  0x18dc(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x18c4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x18a4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1884(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0x1608(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xb0(%rbp)
ff
movsd  0x187c(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1864(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0x15c0(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xb8(%rbp)
ff
movsd  -0x140(%rbp),%xmm0
ff
movsd  -0xb8(%rbp),%xmm1
ff
movsd  0x1594(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0xb0(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0xa8(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0xa0(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0x98(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0x90(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0x88(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
jmp    2db6 <cdflib_gamma_inc+0x1be6>
movsd  0x15ef(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x15d7(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x15b7(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1597(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1577(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1557(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0x1443(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
movsd  0x15af(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1597(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1577(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1557(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0x13e3(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x90(%rbp)
ff
movsd  0x1587(%rip),%xmm0
movsd  -0x160(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x13b3(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x98(%rbp)
ff
movsd  -0x98(%rbp),%xmm0
ff
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0x90(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0x88(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
jmp    2db6 <cdflib_gamma_inc+0x1be6>
movsd  0x145a(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1442(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1422(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0x130e(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
movsd  0x1242(%rip),%xmm0
ucomisd -0xf0(%rbp),%xmm0
ff
jbe    2dd1 <cdflib_gamma_inc+0x1c01>
jmp    2e2f <cdflib_gamma_inc+0x1c5f>
movsd  -0x80(%rbp),%xmm0
movsd  -0x148(%rbp),%xmm1
ff
movsd  0x1282(%rip),%xmm2
mulsd  -0x120(%rbp),%xmm2
ff
divsd  -0x100(%rbp),%xmm2
ff
addsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x20(%rbp),%rax
movsd  0x11f6(%rip),%xmm1
subsd  (%rax),%xmm1
movsd  0x11ea(%rip),%xmm0
addsd  %xmm1,%xmm0
mov    -0x18(%rbp),%rax
movsd  %xmm0,(%rax)
jmp    35fc <cdflib_gamma_inc+0x242c>
movsd  -0x80(%rbp),%xmm0
movsd  -0x148(%rbp),%xmm1
ff
movsd  0x1224(%rip),%xmm2
mulsd  -0x120(%rbp),%xmm2
ff
divsd  -0x100(%rbp),%xmm2
ff
subsd  %xmm2,%xmm1
mulsd  %xmm1,%xmm0
mov    -0x18(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x18(%rbp),%rax
movsd  0x1198(%rip),%xmm1
subsd  (%rax),%xmm1
movsd  0x118c(%rip),%xmm0
addsd  %xmm1,%xmm0
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
jmp    35fc <cdflib_gamma_inc+0x242c>
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
mulsd  -0xc8(%rbp),%xmm0
ff
mulsd  -0xc8(%rbp),%xmm0
ff
movsd  0x1203(%rip),%xmm1
ucomisd %xmm1,%xmm0
jbe    2ebc <cdflib_gamma_inc+0x1cec>
jmp    35ec <cdflib_gamma_inc+0x241c>
movsd  0x1144(%rip),%xmm1
subsd  -0x158(%rbp),%xmm1
ff
movsd  0x1134(%rip),%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x80(%rbp)
movsd  -0x158(%rbp),%xmm0
ff
call   10d0 <sqrt@plt>
movaps %xmm0,%xmm1
movsd  -0x158(%rbp),%xmm0
ff
movsd  0x111b(%rip),%xmm2
divsd  %xmm2,%xmm0
movsd  0x10ff(%rip),%xmm2
subsd  %xmm0,%xmm2
movsd  0x10f3(%rip),%xmm0
addsd  %xmm2,%xmm0
mulsd  %xmm0,%xmm1
movsd  0x112b(%rip),%xmm0
divsd  %xmm0,%xmm1
movsd  0x10d7(%rip),%xmm0
subsd  %xmm1,%xmm0
divsd  -0x80(%rbp),%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
mov    -0x8(%rbp),%rax
movsd  0x10b2(%rip),%xmm0
divsd  (%rax),%xmm0
movsd  %xmm0,-0x140(%rbp)
ff
movsd  -0x160(%rbp),%xmm0
ff
addsd  -0x160(%rbp),%xmm0
ff
call   10d0 <sqrt@plt>
movsd  %xmm0,-0x160(%rbp)
ff
movsd  0x1081(%rip),%xmm0
ucomisd -0xf0(%rbp),%xmm0
ff
jbe    2fb4 <cdflib_gamma_inc+0x1de4>
movsd  -0x160(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  %xmm0,-0x160(%rbp)
ff
mov    -0x168(%rbp),%eax
sub    $0x2,%eax
mov    %eax,-0x230(%rbp)
cmpl   $0x0,-0x230(%rbp)
jge    2fd5 <cdflib_gamma_inc+0x1e05>
jmp    2fec <cdflib_gamma_inc+0x1e1c>
cmpl   $0x0,-0x230(%rbp)
jne    2fe7 <cdflib_gamma_inc+0x1e17>
jmp    33a1 <cdflib_gamma_inc+0x21d1>
jmp    344e <cdflib_gamma_inc+0x227e>
movsd  0x11ec(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x11d4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x11b4(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1194(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1174(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1154(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1134(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0x1020(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
movsd  0x119c(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1184(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1164(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1144(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1124(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x1104(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0xf90(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x90(%rbp)
ff
movsd  0x1154(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x113c(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x111c(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x10fc(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x10dc(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0xf00(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x98(%rbp)
ff
movsd  0x1114(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x10fc(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x10dc(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x10bc(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0xec0(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xa0(%rbp)
ff
movsd  0x10d4(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x10bc(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0xe78(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xa8(%rbp)
ff
movsd  0x10c4(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0x10ac(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0xe30(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xb0(%rbp)
ff
movsd  0x109c(%rip),%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0xe00(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xb8(%rbp)
ff
movsd  -0x140(%rbp),%xmm0
ff
movsd  -0xb8(%rbp),%xmm1
ff
movsd  0xdd4(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0xb0(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0xa8(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0xa0(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0x98(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0x90(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0x88(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
jmp    2db6 <cdflib_gamma_inc+0x1be6>
movsd  0xe0f(%rip),%xmm0
movsd  -0x160(%rbp),%xmm2
ff
movsd  0xdf7(%rip),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0xce3(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x88(%rbp)
ff
movsd  0xe37(%rip),%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0xccb(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x90(%rbp)
ff
movsd  -0x140(%rbp),%xmm0
ff
movsd  -0x90(%rbp),%xmm1
ff
movsd  0xc9f(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
movsd  -0x88(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
jmp    2db6 <cdflib_gamma_inc+0x1be6>
movsd  0xd5a(%rip),%xmm0
movsd  -0x160(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  0xc4e(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
jmp    2db6 <cdflib_gamma_inc+0x1be6>
mov    -0x18(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,(%rax)
mov    -0x20(%rbp),%rax
movsd  0xb6e(%rip),%xmm0
movsd  %xmm0,(%rax)
jmp    35fc <cdflib_gamma_inc+0x242c>
mov    -0x18(%rbp),%rax
movsd  0xb59(%rip),%xmm0
movsd  %xmm0,(%rax)
mov    -0x20(%rbp),%rax
xorps  %xmm0,%xmm0
movsd  %xmm0,(%rax)
jmp    35fc <cdflib_gamma_inc+0x242c>
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0xb55(%rip),%xmm1
ucomisd %xmm1,%xmm0
jb     34da <cdflib_gamma_inc+0x230a>
jmp    3532 <cdflib_gamma_inc+0x2362>
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
call   10d0 <sqrt@plt>
movsd  %xmm0,-0x238(%rbp)
ff
lea    -0x238(%rbp),%rdi
mov    $0x0,%al
call   10f0 <cdflib_error_f@plt>
cvtsi2sd %eax,%xmm0
mov    -0x18(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x18(%rbp),%rax
movsd  0xaf3(%rip),%xmm1
subsd  (%rax),%xmm1
movsd  0xae7(%rip),%xmm0
addsd  %xmm1,%xmm0
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
jmp    35fc <cdflib_gamma_inc+0x242c>
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm0
call   10d0 <sqrt@plt>
movsd  %xmm0,-0x240(%rbp)
ff
lea    0xe5e(%rip),%rdi
lea    -0x240(%rbp),%rsi
mov    $0x0,%al
call   10e0 <cdflib_error_fc@plt>
cvtsi2sd %eax,%xmm0
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x20(%rbp),%rax
movsd  0xa94(%rip),%xmm1
subsd  (%rax),%xmm1
movsd  0xa88(%rip),%xmm0
addsd  %xmm1,%xmm0
mov    -0x18(%rbp),%rax
movsd  %xmm0,(%rax)
jmp    35fc <cdflib_gamma_inc+0x242c>
movsd  -0x110(%rbp),%xmm1
ff
movaps 0xb60(%rip),%xmm0
pand   %xmm0,%xmm1
movsd  0xa7c(%rip),%xmm0
mulsd  -0xc8(%rbp),%xmm0
ff
ucomisd %xmm1,%xmm0
jb     35c3 <cdflib_gamma_inc+0x23f3>
jmp    35ec <cdflib_gamma_inc+0x241c>
jmp    35c8 <cdflib_gamma_inc+0x23f8>
mov    -0x10(%rbp),%rax
movsd  (%rax),%xmm1
mov    -0x8(%rbp),%rax
movsd  (%rax),%xmm0
ucomisd %xmm1,%xmm0
jb     35e7 <cdflib_gamma_inc+0x2417>
jmp    347b <cdflib_gamma_inc+0x22ab>
jmp    349b <cdflib_gamma_inc+0x22cb>
mov    -0x18(%rbp),%rax
movsd  0xa30(%rip),%xmm0
movsd  %xmm0,(%rax)
add    $0x280,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<cdflib_gamma_inc>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x118,%rsp
mov    %r8,%rbx
mov    %rcx,%r14
mov    %rdx,%r15
mov    %rsi,%r12
mov    %rdi,%r13
mov    $0x1,%edi
xor    %eax,%eax
call   1050 <dpmpar@plt>
movsd  0x0(%r13),%xmm7
xorpd  %xmm1,%xmm1
ucomisd %xmm7,%xmm1
ja     121c <cdflib_gamma_inc+0x5c>
movsd  (%r12),%xmm0
ucomisd %xmm0,%xmm1
ja     121c <cdflib_gamma_inc+0x5c>
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm7
jne    123b <cdflib_gamma_inc+0x7b>
jp     123b <cdflib_gamma_inc+0x7b>
ucomisd %xmm1,%xmm0
jne    123b <cdflib_gamma_inc+0x7b>
jp     123b <cdflib_gamma_inc+0x7b>
movabs $0x4000000000000000,%rax
mov    %rax,(%r15)
add    $0x118,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret
mulsd  %xmm7,%xmm0
ucomisd %xmm1,%xmm0
jne    1269 <cdflib_gamma_inc+0xa9>
jp     1269 <cdflib_gamma_inc+0xa9>
ucomisd (%r12),%xmm7
jae    138c <cdflib_gamma_inc+0x1cc>
movabs $0x3ff0000000000000,%rax
mov    %rax,(%r15)
movq   $0x0,(%r14)
jmp    1229 <cdflib_gamma_inc+0x69>
xorps  %xmm1,%xmm1
cvtsi2sd %eax,%xmm1
mov    (%rbx),%eax
lea    0x1(%rax),%ecx
cmp    $0x2,%ecx
mov    $0x3,%ebp
cmove  %ecx,%ebp
test   %eax,%eax
cmove  %ecx,%ebp
lea    -0x1(%rbp),%ebx
lea    0x2061(%rip),%rax
movsd  (%rax,%rbx,8),%xmm0
movsd  %xmm1,0x8(%rsp)
mov    $0x2,%al
call   10a0 <cdflib_fifdmax1@plt>
cvtsi2sd %eax,%xmm3
movsd  0x0(%r13),%xmm1
ucomisd 0x1d4d(%rip),%xmm1
jae    12e9 <cdflib_gamma_inc+0x129>
ucomisd 0x1d4b(%rip),%xmm1
movsd  (%r12),%xmm4
jne    13a5 <cdflib_gamma_inc+0x1e5>
jp     13a5 <cdflib_gamma_inc+0x1e5>
xorpd  %xmm0,%xmm0
ucomisd %xmm0,%xmm4
jb     1525 <cdflib_gamma_inc+0x365>
xorps  %xmm0,%xmm0
sqrtsd %xmm4,%xmm0
jmp    153a <cdflib_gamma_inc+0x37a>
lea    0x2060(%rip),%rax
movsd  (%rax,%rbx,8),%xmm2
lea    0x2014(%rip),%rax
ucomisd (%rax,%rbx,8),%xmm1
movsd  (%r12),%xmm0
jae    136e <cdflib_gamma_inc+0x1ae>
ucomisd %xmm0,%xmm1
movsd  %xmm3,0x28(%rsp)
movsd  %xmm2,0x60(%rsp)
ja     15c3 <cdflib_gamma_inc+0x403>
ucomisd %xmm2,%xmm0
jae    15c3 <cdflib_gamma_inc+0x403>
addsd  %xmm1,%xmm1
movsd  %xmm1,0x10(%rsp)
movapd %xmm1,%xmm0
mov    $0x1,%al
call   1060 <cdflib_fifidint@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  0x10(%rsp),%xmm1
ucomisd %xmm0,%xmm1
jne    1357 <cdflib_gamma_inc+0x197>
jnp    1863 <cdflib_gamma_inc+0x6a3>
movsd  0x0(%r13),%xmm0
movsd  %xmm0,0x10(%rsp)
movsd  (%r12),%xmm0
jmp    15c9 <cdflib_gamma_inc+0x409>
divsd  %xmm1,%xmm0
movsd  %xmm0,0x58(%rsp)
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    161f <cdflib_gamma_inc+0x45f>
jp     161f <cdflib_gamma_inc+0x45f>
movq   $0x0,(%r15)
movabs $0x3ff0000000000000,%rax
mov    %rax,(%r14)
jmp    1229 <cdflib_gamma_inc+0x69>
movsd  0x1ed3(%rip),%xmm0
ucomisd %xmm4,%xmm0
movsd  %xmm1,0x10(%rsp)
jbe    169d <cdflib_gamma_inc+0x4dd>
movsd  0x1ecb(%rip),%xmm2
movapd %xmm1,%xmm5
addsd  %xmm2,%xmm5
movapd %xmm4,%xmm0
divsd  %xmm5,%xmm0
mulsd  %xmm2,%xmm3
movsd  0x1c1e(%rip),%xmm8
addsd  %xmm1,%xmm8
divsd  %xmm8,%xmm3
movsd  0x1c0b(%rip),%xmm10
movapd 0x1ee2(%rip),%xmm9
movapd 0x1ec9(%rip),%xmm11
movapd %xmm4,%xmm5
xorpd  %xmm9,%xmm5
addsd  %xmm10,%xmm2
movapd %xmm4,%xmm6
divsd  %xmm2,%xmm6
mulsd  %xmm6,%xmm5
movapd %xmm1,%xmm6
addsd  %xmm2,%xmm6
movapd %xmm5,%xmm7
divsd  %xmm6,%xmm7
addsd  %xmm7,%xmm0
andpd  %xmm11,%xmm7
ucomisd %xmm3,%xmm7
ja     140b <cdflib_gamma_inc+0x24b>
movapd %xmm1,%xmm2
mulsd  %xmm4,%xmm2
divsd  0x1e48(%rip),%xmm0
movsd  0x1e48(%rip),%xmm3
addsd  %xmm1,%xmm3
movsd  0x1e0c(%rip),%xmm5
divsd  %xmm3,%xmm5
addsd  %xmm0,%xmm5
movapd %xmm10,%xmm0
divsd  %xmm8,%xmm0
mulsd  %xmm4,%xmm5
addsd  %xmm0,%xmm5
mulsd  %xmm2,%xmm5
movsd  %xmm5,0x28(%rsp)
movapd %xmm4,%xmm0
call   10b0 <log@plt>
mulsd  0x10(%rsp),%xmm0
movsd  %xmm0,0x10(%rsp)
movsd  %xmm0,0x38(%rsp)
mov    %r13,%rdi
xor    %eax,%eax
call   1040 <cdflib_gam1@plt>
movsd  0x1b4b(%rip),%xmm2
xorps  %xmm3,%xmm3
cvtsi2sd %eax,%xmm3
addsd  %xmm3,%xmm2
movsd  (%r12),%xmm0
movsd  0x1dda(%rip),%xmm1
ucomisd %xmm0,%xmm1
movsd  %xmm2,0x8(%rsp)
jbe    18ae <cdflib_gamma_inc+0x6ee>
movsd  0x10(%rsp),%xmm0
ucomisd 0x1dcc(%rip),%xmm0
ja     18c8 <cdflib_gamma_inc+0x708>
call   1080 <exp@plt>
movsd  0x8(%rsp),%xmm2
mulsd  %xmm0,%xmm2
movsd  0x1aff(%rip),%xmm0
movapd %xmm0,%xmm1
subsd  0x28(%rsp),%xmm1
addsd  %xmm0,%xmm1
mulsd  %xmm2,%xmm1
movsd  %xmm1,(%r15)
jmp    1c41 <cdflib_gamma_inc+0xa81>
movapd %xmm4,%xmm0
movsd  %xmm4,0x8(%rsp)
call   10c0 <sqrt@plt>
movsd  0x8(%rsp),%xmm4
ucomisd 0x1d66(%rip),%xmm4
jae    1580 <cdflib_gamma_inc+0x3c0>
movsd  %xmm0,0x70(%rsp)
lea    0x70(%rsp),%rdi
xor    %eax,%eax
call   10e0 <cdflib_error_f@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,(%r15)
movsd  0x1a9e(%rip),%xmm1
movapd %xmm1,%xmm2
subsd  %xmm0,%xmm2
addsd  %xmm1,%xmm2
movsd  %xmm2,(%r14)
jmp    1229 <cdflib_gamma_inc+0x69>
movsd  %xmm0,0x70(%rsp)
lea    0x1ddf(%rip),%rdi
lea    0x70(%rsp),%rsi
xor    %eax,%eax
call   10d0 <cdflib_error_fc@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,(%r14)
movsd  0x1a5b(%rip),%xmm1
movapd %xmm1,%xmm2
subsd  %xmm0,%xmm2
addsd  %xmm1,%xmm2
movsd  %xmm2,(%r15)
jmp    1229 <cdflib_gamma_inc+0x69>
movsd  %xmm1,0x10(%rsp)
call   10b0 <log@plt>
mulsd  0x10(%rsp),%xmm0
subsd  (%r12),%xmm0
call   1080 <exp@plt>
movsd  %xmm0,0x10(%rsp)
mov    %r13,%rdi
xor    %eax,%eax
call   1090 <cdflib_gamma_x@plt>
movsd  0x10(%rsp),%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %eax,%xmm1
divsd  %xmm1,%xmm0
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    1716 <cdflib_gamma_inc+0x556>
jp     1716 <cdflib_gamma_inc+0x556>
movsd  0x0(%r13),%xmm7
jmp    1247 <cdflib_gamma_inc+0x87>
movsd  %xmm2,0x60(%rsp)
movsd  %xmm3,0x28(%rsp)
movsd  0x19d5(%rip),%xmm1
movapd %xmm1,%xmm2
subsd  %xmm0,%xmm2
addsd  %xmm1,%xmm2
movapd %xmm2,0x10(%rsp)
lea    0x58(%rsp),%rdi
xor    %eax,%eax
call   1030 <cdflib_rlog@plt>
cvtsi2sd %eax,%xmm4
movsd  %xmm4,0x38(%rsp)
movsd  0x0(%r13),%xmm7
movsd  0x19a7(%rip),%xmm0
divsd  %xmm7,%xmm0
ucomisd %xmm0,%xmm4
jae    1931 <cdflib_gamma_inc+0x771>
lea    0x1cb2(%rip),%rax
movsd  (%rax,%rbx,8),%xmm5
xorpd  %xmm0,%xmm0
ucomisd %xmm0,%xmm7
jb     19ed <cdflib_gamma_inc+0x82d>
xorps  %xmm3,%xmm3
sqrtsd %xmm7,%xmm3
jmp    1a1e <cdflib_gamma_inc+0x85e>
movapd %xmm4,%xmm0
movsd  %xmm3,0x28(%rsp)
call   10b0 <log@plt>
mulsd  0x10(%rsp),%xmm0
subsd  (%r12),%xmm0
movsd  0x0(%r13),%xmm1
movsd  %xmm1,0x10(%rsp)
call   1080 <exp@plt>
mulsd  0x10(%rsp),%xmm0
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jne    16df <cdflib_gamma_inc+0x51f>
jnp    1253 <cdflib_gamma_inc+0x93>
mov    %r13,%rdi
xor    %eax,%eax
movsd  %xmm0,0x10(%rsp)
call   1040 <cdflib_gam1@plt>
movsd  0x28(%rsp),%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
addsd  0x18fc(%rip),%xmm0
movsd  0x10(%rsp),%xmm2
mulsd  %xmm0,%xmm2
movsd  %xmm2,0x10(%rsp)
jmp    176c <cdflib_gamma_inc+0x5ac>
movsd  %xmm0,0x10(%rsp)
movsd  (%r12),%xmm0
movsd  %xmm0,0x40(%rsp)
movsd  0x0(%r13),%xmm0
movsd  0x1b42(%rip),%xmm1
mov    $0x2,%al
call   10a0 <cdflib_fifdmax1@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
ucomisd 0x40(%rsp),%xmm0
jae    1958 <cdflib_gamma_inc+0x798>
movsd  (%r12),%xmm0
movsd  0x60(%rsp),%xmm1
ucomisd %xmm0,%xmm1
movsd  0x28(%rsp),%xmm1
jbe    1b02 <cdflib_gamma_inc+0x942>
movsd  0x8(%rsp),%xmm0
mulsd  0x1b0e(%rip),%xmm0
mov    $0x2,%al
call   10a0 <cdflib_fifdmax1@plt>
cvtsi2sd %eax,%xmm10
movsd  (%r12),%xmm12
movsd  0x0(%r13),%xmm11
movsd  0x1865(%rip),%xmm9
movapd %xmm9,%xmm4
subsd  %xmm11,%xmm4
addsd  %xmm12,%xmm4
movapd 0x1b1d(%rip),%xmm8
movapd %xmm9,%xmm2
movapd %xmm12,%xmm6
movapd %xmm9,%xmm7
movapd %xmm9,%xmm0
mulsd  %xmm2,%xmm7
movapd %xmm12,%xmm3
mulsd  %xmm0,%xmm3
addsd  %xmm3,%xmm7
mulsd  %xmm2,%xmm6
movapd %xmm12,%xmm3
mulsd  %xmm4,%xmm3
addsd  %xmm3,%xmm6
addsd  %xmm9,%xmm2
movapd %xmm2,%xmm5
subsd  %xmm11,%xmm5
mulsd  %xmm5,%xmm0
addsd  %xmm7,%xmm0
mulsd  %xmm4,%xmm5
addsd  %xmm6,%xmm5
movapd %xmm0,%xmm3
unpcklpd %xmm7,%xmm3
movapd %xmm5,%xmm4
unpcklpd %xmm6,%xmm5
divpd  %xmm5,%xmm3
movapd %xmm3,%xmm5
unpckhpd %xmm3,%xmm5
movapd %xmm3,%xmm1
subsd  %xmm5,%xmm1
andpd  %xmm8,%xmm1
movapd %xmm3,%xmm5
mulsd  %xmm10,%xmm5
ucomisd %xmm5,%xmm1
jae    17c7 <cdflib_gamma_inc+0x607>
movsd  0x10(%rsp),%xmm2
mulsd  %xmm3,%xmm2
movsd  %xmm2,(%r14)
movsd  0x17b2(%rip),%xmm0
movapd %xmm0,%xmm1
subsd  %xmm2,%xmm1
jmp    1e65 <cdflib_gamma_inc+0xca5>
mov    %eax,%ebx
shr    $0x1f,%ebx
add    %eax,%ebx
sar    %ebx
xorps  %xmm0,%xmm0
cvtsi2sd %ebx,%xmm0
movsd  0x0(%r13),%xmm1
ucomisd %xmm0,%xmm1
movsd  (%r12),%xmm0
jne    1b7b <cdflib_gamma_inc+0x9bb>
jp     1b7b <cdflib_gamma_inc+0x9bb>
xorpd  0x1a49(%rip),%xmm0
call   1080 <exp@plt>
movapd %xmm0,%xmm4
mov    $0x1,%ebp
xorpd  %xmm1,%xmm1
jmp    1df3 <cdflib_gamma_inc+0xc33>
divsd  0x19fa(%rip),%xmm0
ucomisd 0x0(%r13),%xmm0
movsd  0x10(%rsp),%xmm0
jbe    14f2 <cdflib_gamma_inc+0x332>
lea    0x38(%rsp),%rdi
xor    %eax,%eax
movsd  %xmm3,0x10(%rsp)
call   1070 <cdflib_rexp@plt>
xorps  %xmm2,%xmm2
cvtsi2sd %eax,%xmm2
movsd  %xmm2,0x58(%rsp)
movsd  0x1719(%rip),%xmm0
movapd %xmm2,%xmm1
addsd  %xmm0,%xmm1
addsd  %xmm0,%xmm1
mulsd  0x28(%rsp),%xmm1
subsd  %xmm2,%xmm1
mulsd  0x8(%rsp),%xmm1
subsd  0x10(%rsp),%xmm1
movsd  %xmm1,(%r14)
xorpd  %xmm2,%xmm2
ucomisd %xmm1,%xmm2
ja     1253 <cdflib_gamma_inc+0x93>
movapd %xmm0,%xmm2
subsd  %xmm1,%xmm2
jmp    1d85 <cdflib_gamma_inc+0xbc5>
movapd 0x10(%rsp),%xmm1
andpd  0x1991(%rip),%xmm1
movsd  0x8(%rsp),%xmm0
addsd  %xmm0,%xmm0
ucomisd %xmm1,%xmm0
jae    121c <cdflib_gamma_inc+0x5c>
jmp    1247 <cdflib_gamma_inc+0x87>
movsd  0x0(%r13),%xmm0
movsd  0x169a(%rip),%xmm2
addsd  %xmm0,%xmm2
movsd  (%r12),%xmm3
movapd %xmm3,%xmm1
divsd  %xmm2,%xmm1
movsd  %xmm1,0x70(%rsp)
mov    $0x3,%eax
movsd  0x1675(%rip),%xmm4
movsd  0x1715(%rip),%xmm5
movsd  0x28(%rsp),%xmm7
movapd %xmm1,%xmm6
addsd  %xmm4,%xmm2
movapd %xmm3,%xmm1
divsd  %xmm2,%xmm1
mulsd  %xmm6,%xmm1
ucomisd %xmm1,%xmm5
jae    1b92 <cdflib_gamma_inc+0x9d2>
movsd  %xmm1,0x60(%rsp,%rax,8)
cmp    $0x15,%rax
je     1b98 <cdflib_gamma_inc+0x9d8>
addsd  %xmm4,%xmm2
movapd %xmm3,%xmm6
divsd  %xmm2,%xmm6
mulsd  %xmm6,%xmm1
ucomisd %xmm1,%xmm5
jae    1b9d <cdflib_gamma_inc+0x9dd>
movsd  %xmm1,0x68(%rsp,%rax,8)
add    $0x2,%rax
jmp    1999 <cdflib_gamma_inc+0x7d9>
movapd %xmm7,%xmm0
movapd %xmm7,0x40(%rsp)
movsd  %xmm4,0x30(%rsp)
movsd  %xmm5,0x68(%rsp)
call   10c0 <sqrt@plt>
movsd  0x68(%rsp),%xmm5
movsd  0x30(%rsp),%xmm4
movapd 0x40(%rsp),%xmm7
movapd %xmm0,%xmm3
movsd  0x8(%rsp),%xmm1
movapd 0x10(%rsp),%xmm2
andpd  0x189e(%rip),%xmm2
mulsd  %xmm4,%xmm7
divsd  %xmm3,%xmm5
ucomisd %xmm2,%xmm5
jae    1ac6 <cdflib_gamma_inc+0x906>
movsd  0x1614(%rip),%xmm0
ucomisd %xmm2,%xmm0
jae    1c57 <cdflib_gamma_inc+0xa97>
movsd  0x0(%r13),%xmm1
movsd  0x159c(%rip),%xmm2
divsd  %xmm1,%xmm2
mulsd  %xmm2,%xmm2
movsd  0x17cc(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x17c8(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x17c4(%rip),%xmm0
mulsd  %xmm2,%xmm0
addsd  0x17c0(%rip),%xmm0
mulsd  0x17c0(%rip),%xmm1
divsd  %xmm1,%xmm0
subsd  %xmm7,%xmm0
mulsd  0x1788(%rip),%xmm3
movsd  %xmm3,0x30(%rsp)
call   1080 <exp@plt>
mulsd  0x30(%rsp),%xmm0
jmp    1600 <cdflib_gamma_inc+0x440>
movsd  0x0(%r13),%xmm0
mulsd  %xmm1,%xmm0
mulsd  %xmm1,%xmm0
ucomisd 0x153c(%rip),%xmm0
ja     121c <cdflib_gamma_inc+0x5c>
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm7
movsd  %xmm3,0x30(%rsp)
jb     1e73 <cdflib_gamma_inc+0xcb3>
xorps  %xmm0,%xmm0
sqrtsd %xmm7,%xmm0
jmp    1e8c <cdflib_gamma_inc+0xccc>
movsd  0x0(%r13),%xmm2
addsd  0x1738(%rip),%xmm2
movapd %xmm2,%xmm3
divsd  %xmm0,%xmm3
movsd  %xmm3,0x70(%rsp)
mov    $0x1,%eax
movsd  0x171d(%rip),%xmm4
movapd 0x179d(%rip),%xmm5
movsd  0x156d(%rip),%xmm7
movapd %xmm3,%xmm6
addsd  %xmm4,%xmm2
movapd %xmm2,%xmm3
divsd  %xmm0,%xmm3
mulsd  %xmm6,%xmm3
movapd %xmm3,%xmm6
andpd  %xmm5,%xmm6
ucomisd %xmm6,%xmm7
jae    1cca <cdflib_gamma_inc+0xb0a>
movsd  %xmm3,0x70(%rsp,%rax,8)
add    $0x1,%rax
cmp    $0x14,%rax
jne    1b3b <cdflib_gamma_inc+0x97b>
mov    $0x14,%eax
jmp    1ccd <cdflib_gamma_inc+0xb0d>
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jb     1d93 <cdflib_gamma_inc+0xbd3>
sqrtsd %xmm0,%xmm0
jmp    1d98 <cdflib_gamma_inc+0xbd8>
add    $0xffffffffffffffff,%rax
jmp    1b9d <cdflib_gamma_inc+0x9dd>
mov    $0x14,%eax
mulsd  0x1463(%rip),%xmm7
movapd %xmm1,%xmm5
addsd  %xmm4,%xmm2
movapd %xmm3,%xmm6
divsd  %xmm2,%xmm6
mulsd  %xmm6,%xmm5
addsd  %xmm5,%xmm1
ucomisd %xmm7,%xmm5
ja     1ba9 <cdflib_gamma_inc+0x9e9>
mov    %eax,%edx
lea    -0x1(%rax),%esi
add    $0xfffffffe,%eax
mov    %esi,%ecx
and    $0x3,%ecx
cmp    $0x3,%eax
jae    1bdd <cdflib_gamma_inc+0xa1d>
movsd  0x10(%rsp),%xmm2
jmp    1c07 <cdflib_gamma_inc+0xa47>
and    $0xfffffffc,%esi
movsd  0x10(%rsp),%xmm2
addsd  0x60(%rsp,%rdx,8),%xmm1
addsd  0x58(%rsp,%rdx,8),%xmm1
addsd  0x50(%rsp,%rdx,8),%xmm1
addsd  0x48(%rsp,%rdx,8),%xmm1
add    $0xfffffffffffffffc,%rdx
add    $0xfffffffc,%esi
jne    1be6 <cdflib_gamma_inc+0xa26>
test   %ecx,%ecx
je     1c24 <cdflib_gamma_inc+0xa64>
lea    (%rsp,%rdx,8),%rax
add    $0x60,%rax
neg    %ecx
xor    %edx,%edx
addsd  (%rax,%rdx,8),%xmm1
add    $0xffffffffffffffff,%rdx
cmp    %edx,%ecx
jne    1c17 <cdflib_gamma_inc+0xa57>
divsd  %xmm0,%xmm2
addsd  0x13d0(%rip),%xmm1
mulsd  %xmm2,%xmm1
movsd  %xmm1,(%r15)
movsd  0x13c7(%rip),%xmm0
movapd %xmm0,%xmm2
subsd  %xmm1,%xmm2
addsd  %xmm0,%xmm2
movsd  %xmm2,(%r14)
jmp    1229 <cdflib_gamma_inc+0x69>
movapd %xmm1,%xmm0
addsd  %xmm1,%xmm0
ucomisd %xmm2,%xmm0
jb     1c81 <cdflib_gamma_inc+0xac1>
movsd  0x0(%r13),%xmm0
mulsd  %xmm1,%xmm0
mulsd  %xmm1,%xmm0
ucomisd 0x139d(%rip),%xmm0
ja     121c <cdflib_gamma_inc+0x5c>
movapd %xmm2,0x10(%rsp)
movsd  %xmm3,0x30(%rsp)
movapd 0x164b(%rip),%xmm0
xorpd  %xmm7,%xmm0
movapd %xmm7,0x40(%rsp)
call   1080 <exp@plt>
movapd 0x40(%rsp),%xmm1
xorpd  %xmm2,%xmm2
ucomisd %xmm2,%xmm1
movsd  %xmm0,0x8(%rsp)
jb     1fb4 <cdflib_gamma_inc+0xdf4>
xorps  %xmm0,%xmm0
sqrtsd %xmm1,%xmm0
jmp    1fbd <cdflib_gamma_inc+0xdfd>
add    $0x1,%eax
ucomisd %xmm6,%xmm1
jae    1cfb <cdflib_gamma_inc+0xb3b>
movapd %xmm3,%xmm7
addsd  %xmm4,%xmm2
movapd %xmm2,%xmm6
divsd  %xmm0,%xmm6
mulsd  %xmm6,%xmm3
addsd  %xmm3,%xmm7
movapd %xmm3,%xmm6
andpd  %xmm5,%xmm6
ucomisd %xmm6,%xmm1
jb     1cd7 <cdflib_gamma_inc+0xb17>
jmp    1cff <cdflib_gamma_inc+0xb3f>
movapd %xmm3,%xmm7
mov    %eax,%edx
lea    -0x1(%rax),%esi
add    $0xfffffffe,%eax
mov    %esi,%ecx
and    $0x3,%ecx
cmp    $0x3,%eax
jae    1d19 <cdflib_gamma_inc+0xb59>
movsd  0x10(%rsp),%xmm2
jmp    1d43 <cdflib_gamma_inc+0xb83>
and    $0xfffffffc,%esi
movsd  0x10(%rsp),%xmm2
addsd  0x60(%rsp,%rdx,8),%xmm7
addsd  0x58(%rsp,%rdx,8),%xmm7
addsd  0x50(%rsp,%rdx,8),%xmm7
addsd  0x48(%rsp,%rdx,8),%xmm7
add    $0xfffffffffffffffc,%rdx
add    $0xfffffffc,%esi
jne    1d22 <cdflib_gamma_inc+0xb62>
test   %ecx,%ecx
je     1d60 <cdflib_gamma_inc+0xba0>
lea    (%rsp,%rdx,8),%rax
add    $0x60,%rax
neg    %ecx
xor    %edx,%edx
addsd  (%rax,%rdx,8),%xmm7
add    $0xffffffffffffffff,%rdx
cmp    %edx,%ecx
jne    1d53 <cdflib_gamma_inc+0xb93>
divsd  %xmm0,%xmm2
addsd  0x1294(%rip),%xmm7
mulsd  %xmm2,%xmm7
movsd  %xmm7,(%r14)
movsd  0x128b(%rip),%xmm0
movapd %xmm0,%xmm2
subsd  %xmm7,%xmm2
addsd  %xmm0,%xmm2
movsd  %xmm2,(%r15)
jmp    1229 <cdflib_gamma_inc+0x69>
call   10c0 <sqrt@plt>
movsd  %xmm0,0x70(%rsp)
lea    0x15c7(%rip),%rdi
xor    %ebp,%ebp
lea    0x70(%rsp),%rsi
xor    %eax,%eax
call   10d0 <cdflib_error_fc@plt>
xorps  %xmm0,%xmm0
cvtsi2sd %eax,%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  (%r12),%xmm0
xorpd  0x1512(%rip),%xmm0
call   1080 <exp@plt>
movsd  0x8(%rsp),%xmm4
movsd  0x70(%rsp),%xmm1
mulsd  0x1481(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  0x147d(%rip),%xmm1
mov    %ebx,%ecx
sub    %ebp,%ecx
je     1e50 <cdflib_gamma_inc+0xc90>
movsd  (%r12),%xmm2
lea    0x1(%rbp),%eax
test   $0x1,%cl
je     1e1d <cdflib_gamma_inc+0xc5d>
addsd  0x11f1(%rip),%xmm1
mulsd  %xmm2,%xmm0
divsd  %xmm1,%xmm0
addsd  %xmm0,%xmm4
mov    %eax,%ebp
cmp    %eax,%ebx
je     1e50 <cdflib_gamma_inc+0xc90>
sub    %ebp,%ebx
movsd  0x11d5(%rip),%xmm3
addsd  %xmm3,%xmm1
mulsd  %xmm2,%xmm0
divsd  %xmm1,%xmm0
addsd  %xmm0,%xmm4
addsd  %xmm3,%xmm1
mulsd  %xmm2,%xmm0
divsd  %xmm1,%xmm0
addsd  %xmm0,%xmm4
add    $0xfffffffe,%ebx
jne    1e2b <cdflib_gamma_inc+0xc6b>
movsd  %xmm4,(%r14)
movsd  0x11ab(%rip),%xmm0
movapd %xmm0,%xmm1
subsd  %xmm4,%xmm1
addsd  %xmm0,%xmm1
movsd  %xmm1,(%r15)
jmp    1229 <cdflib_gamma_inc+0x69>
movapd %xmm7,%xmm0
movapd %xmm7,0x40(%rsp)
call   10c0 <sqrt@plt>
xorpd  %xmm1,%xmm1
movapd 0x40(%rsp),%xmm7
movsd  0x1173(%rip),%xmm10
movapd %xmm10,%xmm13
subsd  %xmm7,%xmm13
divsd  0x1179(%rip),%xmm7
addsd  %xmm10,%xmm7
addsd  %xmm10,%xmm7
mulsd  %xmm0,%xmm7
divsd  0x116b(%rip),%xmm7
movsd  0x113b(%rip),%xmm2
movapd %xmm2,%xmm14
divsd  0x0(%r13),%xmm14
movsd  0x38(%rsp),%xmm0
addsd  %xmm0,%xmm0
ucomisd %xmm1,%xmm0
jb     1ee6 <cdflib_gamma_inc+0xd26>
sqrtsd %xmm0,%xmm0
jmp    1f24 <cdflib_gamma_inc+0xd64>
movapd %xmm7,0x40(%rsp)
movsd  %xmm13,0x8(%rsp)
movsd  %xmm14,0x28(%rsp)
call   10c0 <sqrt@plt>
movsd  0x10f9(%rip),%xmm2
movsd  0x28(%rsp),%xmm14
movsd  0x8(%rsp),%xmm13
movapd 0x40(%rsp),%xmm7
movsd  0x10e4(%rip),%xmm10
movsd  0x30(%rsp),%xmm12
addsd  %xmm10,%xmm13
addsd  %xmm10,%xmm7
movsd  0x58(%rsp),%xmm8
ucomisd %xmm8,%xmm2
jbe    1f51 <cdflib_gamma_inc+0xd91>
xorpd  0x1395(%rip),%xmm0
movlpd %xmm0,0x38(%rsp)
divsd  %xmm13,%xmm7
cmp    $0x2,%ebp
jb     23cd <cdflib_gamma_inc+0x120d>
jne    264d <cdflib_gamma_inc+0x148d>
movsd  0x10d3(%rip),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x10b7(%rip),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x10b3(%rip),%xmm1
mulsd  0x10bb(%rip),%xmm0
addsd  0x10bb(%rip),%xmm0
movsd  0x10bb(%rip),%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm0,%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm1,%xmm5
jmp    268f <cdflib_gamma_inc+0x14cf>
movapd %xmm1,%xmm0
call   10c0 <sqrt@plt>
movsd  %xmm0,0x70(%rsp)
lea    0x139e(%rip),%rdi
lea    0x70(%rsp),%rsi
xor    %eax,%eax
call   10d0 <cdflib_error_fc@plt>
mov    %eax,%ebx
movsd  0x1020(%rip),%xmm1
movapd %xmm1,%xmm14
divsd  0x0(%r13),%xmm14
movsd  0x38(%rsp),%xmm0
addsd  %xmm0,%xmm0
ucomisd 0x12c3(%rip),%xmm0
jb     2005 <cdflib_gamma_inc+0xe45>
sqrtsd %xmm0,%xmm0
jmp    2020 <cdflib_gamma_inc+0xe60>
movsd  %xmm14,0x28(%rsp)
call   10c0 <sqrt@plt>
movsd  0xfe7(%rip),%xmm1
movsd  0x28(%rsp),%xmm14
movsd  0xfdf(%rip),%xmm10
movsd  0x30(%rsp),%xmm12
movsd  0x8(%rsp),%xmm13
xorps  %xmm7,%xmm7
cvtsi2sd %ebx,%xmm7
movsd  0x58(%rsp),%xmm8
ucomisd %xmm8,%xmm1
jbe    205a <cdflib_gamma_inc+0xe9a>
xorpd  0x128c(%rip),%xmm0
movlpd %xmm0,0x38(%rsp)
mulsd  0xfa6(%rip),%xmm7
cmp    $0x2,%ebp
jae    2597 <cdflib_gamma_inc+0x13d7>
movsd  0x1035(%rip),%xmm1
ucomisd 0x10(%rsp),%xmm1
jae    23cd <cdflib_gamma_inc+0x120d>
movsd  0x10d0(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0x10ca(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0x10c4(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0x10be(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0x10b8(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0x10b2(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0xfd4(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0xf86(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0xf80(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0xf7a(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0xf54(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0xf1e(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0xf00(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0xefa(%rip),%xmm9
movsd  0x1041(%rip),%xmm11
mulsd  %xmm0,%xmm11
addsd  0x103b(%rip),%xmm11
mulsd  %xmm0,%xmm11
addsd  0x1035(%rip),%xmm11
mulsd  %xmm0,%xmm11
addsd  0x102f(%rip),%xmm11
mulsd  %xmm0,%xmm11
addsd  0x1029(%rip),%xmm11
mulsd  %xmm0,%xmm11
addsd  0x1023(%rip),%xmm11
mulsd  %xmm0,%xmm11
addsd  0xf1d(%rip),%xmm11
mulsd  %xmm0,%xmm11
addsd  0xf17(%rip),%xmm11
mulsd  %xmm0,%xmm11
addsd  0xed1(%rip),%xmm11
mulsd  %xmm0,%xmm11
addsd  0xecb(%rip),%xmm11
mulsd  %xmm0,%xmm11
addsd  0xec5(%rip),%xmm11
mulsd  %xmm0,%xmm11
addsd  0xe67(%rip),%xmm11
mulsd  %xmm0,%xmm11
addsd  0xe61(%rip),%xmm11
movsd  0xfc1(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xfbd(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xfb9(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xfb5(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xfb1(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xe95(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xe91(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xe8d(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xe89(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xe3d(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xde9(%rip),%xmm4
movsd  0xf69(%rip),%xmm6
mulsd  %xmm0,%xmm6
addsd  0xf65(%rip),%xmm6
mulsd  %xmm0,%xmm6
addsd  0xf61(%rip),%xmm6
mulsd  %xmm0,%xmm6
addsd  0xf5d(%rip),%xmm6
mulsd  %xmm0,%xmm6
addsd  0xe41(%rip),%xmm6
mulsd  %xmm0,%xmm6
addsd  0xe3d(%rip),%xmm6
mulsd  %xmm0,%xmm6
addsd  0xe39(%rip),%xmm6
mulsd  %xmm0,%xmm6
addsd  0xe35(%rip),%xmm6
mulsd  %xmm0,%xmm6
addsd  0xe31(%rip),%xmm6
movsd  0xf21(%rip),%xmm3
mulsd  %xmm0,%xmm3
addsd  0xf1d(%rip),%xmm3
mulsd  %xmm0,%xmm3
addsd  0xf19(%rip),%xmm3
mulsd  %xmm0,%xmm3
addsd  0xf15(%rip),%xmm3
mulsd  %xmm0,%xmm3
addsd  0xe01(%rip),%xmm3
mulsd  %xmm0,%xmm3
addsd  0xdfd(%rip),%xmm3
mulsd  %xmm0,%xmm3
addsd  0xdf9(%rip),%xmm3
movsd  0xef1(%rip),%xmm1
mulsd  %xmm0,%xmm1
addsd  0xeed(%rip),%xmm1
mulsd  %xmm0,%xmm1
addsd  0xde1(%rip),%xmm1
mulsd  %xmm0,%xmm1
addsd  0xddd(%rip),%xmm1
mulsd  %xmm0,%xmm1
addsd  0xdd9(%rip),%xmm1
movsd  0xec9(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xdcd(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xdc9(%rip),%xmm2
movsd  0xdc9(%rip),%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm2,%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm1,%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm3,%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm6,%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm4,%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm11,%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm9,%xmm5
jmp    268f <cdflib_gamma_inc+0x14cf>
movsd  0xcdb(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xc8f(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xc8b(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xc87(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xc63(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xc2f(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xc13(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xc0f(%rip),%xmm2
movsd  0xc87(%rip),%xmm3
mulsd  %xmm0,%xmm3
addsd  0xc83(%rip),%xmm3
mulsd  %xmm0,%xmm3
addsd  0xc3f(%rip),%xmm3
mulsd  %xmm0,%xmm3
addsd  0xc3b(%rip),%xmm3
mulsd  %xmm0,%xmm3
addsd  0xc37(%rip),%xmm3
mulsd  %xmm0,%xmm3
addsd  0xbdb(%rip),%xmm3
mulsd  %xmm0,%xmm3
addsd  0xbd7(%rip),%xmm3
movsd  0xc47(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xc43(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xc3f(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xc3b(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xbef(%rip),%xmm4
mulsd  %xmm0,%xmm4
addsd  0xb9b(%rip),%xmm4
movsd  0xc23(%rip),%xmm6
mulsd  %xmm0,%xmm6
addsd  0xc1f(%rip),%xmm6
mulsd  %xmm0,%xmm6
addsd  0xc1b(%rip),%xmm6
mulsd  %xmm0,%xmm6
addsd  0xc17(%rip),%xmm6
mulsd  %xmm0,%xmm6
addsd  0xc13(%rip),%xmm6
movsd  0xc12(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0xc0c(%rip),%xmm9
mulsd  %xmm0,%xmm9
addsd  0xc06(%rip),%xmm9
movsd  0xc06(%rip),%xmm1
mulsd  %xmm0,%xmm1
addsd  0xc02(%rip),%xmm1
mulsd  %xmm0,%xmm1
addsd  0xbfe(%rip),%xmm1
mulsd  0xbfe(%rip),%xmm0
addsd  0xbfe(%rip),%xmm0
movsd  0xbfe(%rip),%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm0,%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm1,%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm9,%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm6,%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm4,%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm3,%xmm5
mulsd  %xmm14,%xmm5
addsd  %xmm2,%xmm5
jmp    268f <cdflib_gamma_inc+0x14cf>
jne    2663 <cdflib_gamma_inc+0x14a3>
movsd  0xacb(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xac7(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xac3(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xa9f(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xa6b(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xa4f(%rip),%xmm2
mulsd  %xmm0,%xmm2
addsd  0xa4b(%rip),%xmm2
movsd  0xa93(%rip),%xmm1
mulsd  %xmm0,%xmm1
addsd  0xa8f(%rip),%xmm1
mulsd  %xmm0,%xmm1
addsd  0xa8b(%rip),%xmm1
mulsd  %xmm0,%xmm1
addsd  0xa2f(%rip),%xmm1
mulsd  %xmm0,%xmm1
addsd  0xa2b(%rip),%xmm1
mulsd  0xa73(%rip),%xmm0
addsd  0xa23(%rip),%xmm0
mulsd  %xmm14,%xmm0
addsd  %xmm1,%xmm0
mulsd  %xmm14,%xmm0
addsd  %xmm2,%xmm0
movapd %xmm0,%xmm5
jmp    268f <cdflib_gamma_inc+0x14cf>
mulsd  0x9db(%rip),%xmm0
addsd  0x9db(%rip),%xmm0
movapd %xmm0,%xmm5
jmp    268f <cdflib_gamma_inc+0x14cf>
movsd  0x9fd(%rip),%xmm5
mulsd  %xmm0,%xmm5
addsd  0x9c9(%rip),%xmm5
mulsd  %xmm0,%xmm5
addsd  0x9ad(%rip),%xmm5
mulsd  %xmm0,%xmm5
addsd  0x9a9(%rip),%xmm5
movsd  0x969(%rip),%xmm0
ucomisd %xmm8,%xmm0
mulsd  0xb94(%rip),%xmm5
divsd  %xmm12,%xmm5
jbe    26d2 <cdflib_gamma_inc+0x1512>
subsd  %xmm5,%xmm7
mulsd  %xmm7,%xmm13
movsd  %xmm13,(%r15)
movapd %xmm10,%xmm0
subsd  %xmm13,%xmm0
addsd  %xmm10,%xmm0
movsd  %xmm0,(%r14)
jmp    1229 <cdflib_gamma_inc+0x69>
addsd  %xmm5,%xmm7
mulsd  %xmm7,%xmm13
movsd  %xmm13,(%r14)
movapd %xmm10,%xmm0
subsd  %xmm13,%xmm0
addsd  %xmm10,%xmm0
movsd  %xmm0,(%r15)
jmp    1229 <cdflib_gamma_inc+0x69>

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

LLVM IR (-O2):
@cdflib_gamma_inc.acc0 = internal unnamed_addr constant [3 x double] [double 5.000000e-15, double 5.000000e-07, double 5.000000e-04]
@cdflib_gamma_inc.big = internal unnamed_addr constant [3 x double] [double 2.000000e+01, double 1.400000e+01, double 1.000000e+01]
@cdflib_gamma_inc.e00 = internal unnamed_addr constant [3 x double] [double 2.500000e-04, double 2.500000e-02, double 1.400000e-01]
@cdflib_gamma_inc.x00 = internal unnamed_addr constant [3 x double] [double 3.100000e+01, double 1.700000e+01, double 0x4023666666666666]
@cdflib_gamma_inc.K1 = internal constant i32 1
@cdflib_gamma_inc.K2 = internal constant i32 0
define void @cdflib_gamma_inc(double* %0, double* %1, double* nocapture writeonly %2, double* nocapture writeonly %3, i32* nocapture %4) {
%6 = alloca double
%7 = alloca double
%8 = alloca double
%9 = alloca [20 x double]
%10 = alloca double
%11 = alloca double
%12 = alloca double
%13 = bitcast double* %6 to i8*
%14 = bitcast double* %7 to i8*
%15 = bitcast double* %8 to i8*
%16 = bitcast [20 x double]* %9 to i8*
%17 = bitcast double* %10 to i8*
%18 = bitcast double* %11 to i8*
%19 = bitcast double* %12 to i8*
%20 = tail call i32 (i32, ...) bitcast (i32 (...)* @dpmpar to i32 (i32, ...)*)(i32 1)
%21 = sitofp i32 %20 to double
%22 = load double, double* %0
%23 = fcmp olt double %22, 0.000000e+00
br i1 %23, label %731, label %24
24: ; preds = %5
%25 = load double, double* %1
%26 = fcmp olt double %25, 0.000000e+00
br i1 %26, label %731, label %27
27: ; preds = %24
%28 = fcmp oeq double %22, 0.000000e+00
%29 = fcmp oeq double %25, 0.000000e+00
%30 = select i1 %28, i1 %29, i1 false
br i1 %30, label %731, label %31
31: ; preds = %27
%32 = fmul double %22, %25
%33 = fcmp oeq double %32, 0.000000e+00
br i1 %33, label %727, label %34
34: ; preds = %31
%35 = load i32, i32* %4
%36 = add nsw i32 %35, 1
%37 = icmp ne i32 %35, 0
%38 = icmp ne i32 %36, 2
%39 = select i1 %37, i1 %38, i1 false
%40 = select i1 %39, i32 3, i32 %36
%41 = add nsw i32 %40, -1
%42 = zext i32 %41 to i64
%43 = getelementptr inbounds [3 x double], [3 x double]* @cdflib_gamma_inc.acc0, i64 0, i64 %42
%44 = load double, double* %43
%45 = tail call i32 (double, double, ...) bitcast (i32 (...)* @cdflib_fifdmax1 to i32 (double, double, ...)*)(double %44, double %21)
%46 = sitofp i32 %45 to double
%47 = getelementptr inbounds [3 x double], [3 x double]* @cdflib_gamma_inc.e00, i64 0, i64 %42
%48 = load double, double* %47
%49 = getelementptr inbounds [3 x double], [3 x double]* @cdflib_gamma_inc.x00, i64 0, i64 %42
%50 = load double, double* %49
%51 = load double, double* %0
%52 = fcmp ult double %51, 1.000000e+00
br i1 %52, label %53, label %72
53: ; preds = %34
%54 = fcmp oeq double %51, 5.000000e-01
%55 = load double, double* %1
br i1 %54, label %710, label %56
56: ; preds = %53
%57 = fcmp olt double %55, 1.100000e+00
br i1 %57, label %341, label %58
58: ; preds = %56
%59 = tail call double @log(double %55)
%60 = load double, double* %1
%61 = fneg double %60
%62 = tail call double @llvm.fmuladd.f64(double %51, double %59, double %61)
%63 = load double, double* %0
%64 = tail call double @exp(double %62)
%65 = fmul double %63, %64
%66 = fcmp oeq double %65, 0.000000e+00
br i1 %66, label %709, label %67
67: ; preds = %58
%68 = tail call i32 (double*, ...) bitcast (i32 (...)* @cdflib_gam1 to i32 (double*, ...)*)(double* %0)
%69 = sitofp i32 %68 to double
%70 = fadd double %69, 1.000000e+00
%71 = fmul double %65, %70
br label %460
72: ; preds = %34
%73 = getelementptr inbounds [3 x double], [3 x double]* @cdflib_gamma_inc.big, i64 0, i64 %42
%74 = load double, double* %73
%75 = fcmp ult double %51, %74
%76 = load double, double* %1
br i1 %75, label %77, label %106
77: ; preds = %72
%78 = fcmp ule double %51, %76
%79 = fcmp ult double %76, %50
%80 = select i1 %78, i1 %79, i1 false
br i1 %80, label %81, label %95
81: ; preds = %77
%82 = fadd double %51, %51
%83 = tail call i32 (double, ...) bitcast (i32 (...)* @cdflib_fifidint to i32 (double, ...)*)(double %82)
%84 = sitofp i32 %83 to double
%85 = fcmp une double %82, %84
br i1 %85, label %86, label %89
86: ; preds = %81
%87 = load double, double* %0
%88 = load double, double* %1
br label %95
89: ; preds = %81
%90 = sdiv i32 %83, 2
%91 = load double, double* %0
%92 = sitofp i32 %90 to double
%93 = fcmp oeq double %91, %92
%94 = load double, double* %1
br i1 %93, label %403, label %406
95: ; preds = %86, %77
%96 = phi double [ %88, %86 ], [ %76, %77 ]
%97 = phi double [ %87, %86 ], [ %51, %77 ]
%98 = tail call double @log(double %96)
%99 = load double, double* %1
%100 = fneg double %99
%101 = tail call double @llvm.fmuladd.f64(double %97, double %98, double %100)
%102 = tail call double @exp(double %101)
%103 = tail call i32 (double*, ...) bitcast (i32 (...)* @cdflib_gamma_x to i32 (double*, ...)*)(double* %0)
%104 = sitofp i32 %103 to double
%105 = fdiv double %102, %104
br label %138
106: ; preds = %72
%107 = fdiv double %76, %51
store double %107, double* %6
%108 = fcmp oeq double %107, 0.000000e+00
br i1 %108, label %708, label %109
109: ; preds = %106
%110 = fsub double 5.000000e-01, %107
%111 = fadd double %110, 5.000000e-01
%112 = call i32 (double*, ...) bitcast (i32 (...)* @cdflib_rlog to i32 (double*, ...)*)(double* %6)
%113 = sitofp i32 %112 to double
store double %113, double* %8
%114 = load double, double* %0
%115 = fdiv double 7.000000e+02, %114
%116 = fcmp ugt double %115, %113
br i1 %116, label %117, label %723
117: ; preds = %109
%118 = fmul double %114, %113
%119 = call double @sqrt(double %114)
%120 = call double @llvm.fabs.f64(double %111)
%121 = fdiv double %48, %119
%122 = fcmp ugt double %120, %121
br i1 %122, label %123, label %630
123: ; preds = %117
%124 = fcmp ugt double %120, 4.000000e-01
br i1 %124, label %125, label %500
125: ; preds = %123
%126 = load double, double* %0
%127 = fdiv double 1.000000e+00, %126
%128 = fmul double %127, %127
%129 = call double @llvm.fmuladd.f64(double %128, double 7.500000e-01, double -1.000000e+00)
%130 = call double @llvm.fmuladd.f64(double %129, double %128, double 3.500000e+00)
%131 = call double @llvm.fmuladd.f64(double %130, double %128, double -1.050000e+02)
%132 = fmul double %126, 1.260000e+03
%133 = fdiv double %131, %132
%134 = fsub double %133, %118
%135 = fmul double %119, 0x3FD9884533D43656
%136 = call double @exp(double %134)
%137 = fmul double %135, %136
br label %138
138: ; preds = %125, %95
%139 = phi double [ %137, %125 ], [ %105, %95 ]
%140 = fcmp oeq double %139, 0.000000e+00
br i1 %140, label %141, label %143
141: ; preds = %138
%142 = load double, double* %0
br label %727
143: ; preds = %138
%144 = load double, double* %1
%145 = load double, double* %0
%146 = call i32 (double, double, ...) bitcast (i32 (...)* @cdflib_fifdmax1 to i32 (double, double, ...)*)(double %145, double 0x40026BB1BBB5551F)
%147 = sitofp i32 %146 to double
%148 = fcmp ugt double %144, %147
br i1 %148, label %149, label %152
149: ; preds = %143
%150 = load double, double* %1
%151 = fcmp olt double %150, %50
br i1 %151, label %460, label %252
152: ; preds = %143
%153 = load double, double* %0
%154 = fadd double %153, 1.000000e+00
%155 = load double, double* %1
%156 = fdiv double %155, %154
%157 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 0
store double %156, double* %157
br label %158
158: ; preds = %176, %152
%159 = phi i64 [ 2, %152 ], [ %178, %176 ]
%160 = phi double [ %154, %152 ], [ %172, %176 ]
%161 = phi double [ %156, %152 ], [ %174, %176 ]
%162 = fadd double %160, 1.000000e+00
%163 = fdiv double %155, %162
%164 = fmul double %161, %163
%165 = fcmp ugt double %164, 1.000000e-03
br i1 %165, label %166, label %179
166: ; preds = %158
%167 = add nsw i64 %159, -1
%168 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 %167
store double %164, double* %168
%169 = or i64 %159, 1
%170 = icmp eq i64 %169, 21
br i1 %170, label %184, label %171
171: ; preds = %166
%172 = fadd double %162, 1.000000e+00
%173 = fdiv double %155, %172
%174 = fmul double %164, %173
%175 = fcmp ugt double %174, 1.000000e-03
br i1 %175, label %176, label %179
176: ; preds = %171
%177 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 %159
store double %174, double* %177
%178 = add nuw nsw i64 %159, 2
br label %158
179: ; preds = %171, %158
%180 = phi i64 [ %159, %158 ], [ %169, %171 ]
%181 = phi double [ %162, %158 ], [ %172, %171 ]
%182 = phi double [ %164, %158 ], [ %174, %171 ]
%183 = trunc i64 %180 to i32
br label %184
184: ; preds = %166, %179
%185 = phi double [ %181, %179 ], [ %162, %166 ]
%186 = phi double [ %182, %179 ], [ %164, %166 ]
%187 = phi i32 [ %183, %179 ], [ 20, %166 ]
%188 = fmul double %46, 5.000000e-01
br label %189
189: ; preds = %189, %184
%190 = phi double [ %186, %184 ], [ %196, %189 ]
%191 = phi double [ %186, %184 ], [ %195, %189 ]
%192 = phi double [ %185, %184 ], [ %193, %189 ]
%193 = fadd double %192, 1.000000e+00
%194 = fdiv double %155, %193
%195 = fmul double %191, %194
%196 = fadd double %190, %195
%197 = fcmp ogt double %195, %188
br i1 %197, label %189, label %198
198: ; preds = %189
%199 = zext i32 %187 to i64
%200 = add nsw i32 %187, -1
%201 = add nsw i32 %187, -2
%202 = and i32 %200, 3
%203 = icmp ult i32 %201, 3
br i1 %203, label %229, label %204
204: ; preds = %198
%205 = and i32 %200, -4
br label %206
206: ; preds = %206, %204
%207 = phi i64 [ %199, %204 ], [ %222, %206 ]
%208 = phi double [ %196, %204 ], [ %226, %206 ]
%209 = phi i32 [ 0, %204 ], [ %227, %206 ]
%210 = add nsw i64 %207, -2
%211 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 %210
%212 = load double, double* %211
%213 = fadd double %208, %212
%214 = add nsw i64 %207, -3
%215 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 %214
%216 = load double, double* %215
%217 = fadd double %213, %216
%218 = add nsw i64 %207, -4
%219 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 %218
%220 = load double, double* %219
%221 = fadd double %217, %220
%222 = add nsw i64 %207, -4
%223 = add nsw i64 %207, -5
%224 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 %223
%225 = load double, double* %224
%226 = fadd double %221, %225
%227 = add i32 %209, 4
%228 = icmp eq i32 %227, %205
br i1 %228, label %229, label %206
229: ; preds = %206, %198
%230 = phi double [ undef, %198 ], [ %226, %206 ]
%231 = phi i64 [ %199, %198 ], [ %222, %206 ]
%232 = phi double [ %196, %198 ], [ %226, %206 ]
%233 = icmp eq i32 %202, 0
br i1 %233, label %245, label %234
234: ; preds = %229, %234
%235 = phi i64 [ %238, %234 ], [ %231, %229 ]
%236 = phi double [ %242, %234 ], [ %232, %229 ]
%237 = phi i32 [ %243, %234 ], [ 0, %229 ]
%238 = add nsw i64 %235, -1
%239 = add nsw i64 %235, -2
%240 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 %239
%241 = load double, double* %240
%242 = fadd double %236, %241
%243 = add i32 %237, 1
%244 = icmp eq i32 %243, %202
br i1 %244, label %245, label %234
245: ; preds = %234, %229
%246 = phi double [ %230, %229 ], [ %242, %234 ]
%247 = fdiv double %139, %153
%248 = fadd double %246, 1.000000e+00
%249 = fmul double %247, %248
store double %249, double* %2
%250 = fsub double 5.000000e-01, %249
%251 = fadd double %250, 5.000000e-01
store double %251, double* %3
br label %732
252: ; preds = %149
%253 = load double, double* %0
%254 = fadd double %253, -1.000000e+00
%255 = fdiv double %254, %150
%256 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 0
store double %255, double* %256
br label %257
257: ; preds = %252, %266
%258 = phi i64 [ 2, %252 ], [ %269, %266 ]
%259 = phi double [ %254, %252 ], [ %261, %266 ]
%260 = phi double [ %255, %252 ], [ %263, %266 ]
%261 = fadd double %259, -1.000000e+00
%262 = fdiv double %261, %150
%263 = fmul double %260, %262
%264 = call double @llvm.fabs.f64(double %263)
%265 = fcmp ugt double %264, 1.000000e-03
br i1 %265, label %266, label %271
266: ; preds = %257
%267 = add nsw i64 %258, -1
%268 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 %267
store double %263, double* %268
%269 = add nuw nsw i64 %258, 1
%270 = icmp eq i64 %269, 21
br i1 %270, label %273, label %257
271: ; preds = %257
%272 = trunc i64 %258 to i32
br label %273
273: ; preds = %266, %271
%274 = phi i32 [ %272, %271 ], [ 20, %266 ]
%275 = fcmp ugt double %264, %46
br i1 %275, label %285, label %276
276: ; preds = %285, %273
%277 = phi double [ %263, %273 ], [ %292, %285 ]
%278 = zext i32 %274 to i64
%279 = add nsw i32 %274, -1
%280 = add nsw i32 %274, -2
%281 = and i32 %279, 3
%282 = icmp ult i32 %280, 3
br i1 %282, label %318, label %283
283: ; preds = %276
%284 = and i32 %279, -4
br label %295
285: ; preds = %273, %285
%286 = phi double [ %289, %285 ], [ %261, %273 ]
%287 = phi double [ %291, %285 ], [ %263, %273 ]
%288 = phi double [ %292, %285 ], [ %263, %273 ]
%289 = fadd double %286, -1.000000e+00
%290 = fdiv double %289, %150
%291 = fmul double %287, %290
%292 = fadd double %288, %291
%293 = call double @llvm.fabs.f64(double %291)
%294 = fcmp ugt double %293, %46
br i1 %294, label %285, label %276
295: ; preds = %295, %283
%296 = phi i64 [ %278, %283 ], [ %311, %295 ]
%297 = phi double [ %277, %283 ], [ %315, %295 ]
%298 = phi i32 [ 0, %283 ], [ %316, %295 ]
%299 = add nsw i64 %296, -2
%300 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 %299
%301 = load double, double* %300
%302 = fadd double %297, %301
%303 = add nsw i64 %296, -3
%304 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 %303
%305 = load double, double* %304
%306 = fadd double %302, %305
%307 = add nsw i64 %296, -4
%308 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 %307
%309 = load double, double* %308
%310 = fadd double %306, %309
%311 = add nsw i64 %296, -4
%312 = add nsw i64 %296, -5
%313 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 %312
%314 = load double, double* %313
%315 = fadd double %310, %314
%316 = add i32 %298, 4
%317 = icmp eq i32 %316, %284
br i1 %317, label %318, label %295
318: ; preds = %295, %276
%319 = phi double [ undef, %276 ], [ %315, %295 ]
%320 = phi i64 [ %278, %276 ], [ %311, %295 ]
%321 = phi double [ %277, %276 ], [ %315, %295 ]
%322 = icmp eq i32 %281, 0
br i1 %322, label %334, label %323
323: ; preds = %318, %323
%324 = phi i64 [ %327, %323 ], [ %320, %318 ]
%325 = phi double [ %331, %323 ], [ %321, %318 ]
%326 = phi i32 [ %332, %323 ], [ 0, %318 ]
%327 = add nsw i64 %324, -1
%328 = add nsw i64 %324, -2
%329 = getelementptr inbounds [20 x double], [20 x double]* %9, i64 0, i64 %328
%330 = load double, double* %329
%331 = fadd double %325, %330
%332 = add i32 %326, 1
%333 = icmp eq i32 %332, %281
br i1 %333, label %334, label %323
334: ; preds = %323, %318
%335 = phi double [ %319, %318 ], [ %331, %323 ]
%336 = fdiv double %139, %150
%337 = fadd double %335, 1.000000e+00
%338 = fmul double %336, %337
store double %338, double* %3
%339 = fsub double 5.000000e-01, %338
%340 = fadd double %339, 5.000000e-01
store double %340, double* %2
br label %732
341: ; preds = %56
%342 = fadd double %51, 3.000000e+00
%343 = fdiv double %55, %342
%344 = fmul double %46, 3.000000e+00
%345 = fadd double %51, 1.000000e+00
%346 = fdiv double %344, %345
br label %347
347: ; preds = %347, %341
%348 = phi double [ %55, %341 ], [ %354, %347 ]
%349 = phi double [ %343, %341 ], [ %357, %347 ]
%350 = phi double [ 3.000000e+00, %341 ], [ %351, %347 ]
%351 = fadd double %350, 1.000000e+00
%352 = fdiv double %55, %351
%353 = fneg double %348
%354 = fmul double %352, %353
%355 = fadd double %51, %351
%356 = fdiv double %354, %355
%357 = fadd double %349, %356
%358 = tail call double @llvm.fabs.f64(double %356)
%359 = fcmp ogt double %358, %346
br i1 %359, label %347, label %360
360: ; preds = %347
%361 = fmul double %51, %55
%362 = fdiv double %357, 6.000000e+00
%363 = fadd double %51, 2.000000e+00
%364 = fdiv double 5.000000e-01, %363
%365 = fsub double %362, %364
%366 = fdiv double 1.000000e+00, %345
%367 = tail call double @llvm.fmuladd.f64(double %365, double %55, double %366)
%368 = fmul double %361, %367
%369 = tail call double @log(double %55)
%370 = fmul double %51, %369
store double %370, double* %8
%371 = tail call i32 (double*, ...) bitcast (i32 (...)* @cdflib_gam1 to i32 (double*, ...)*)(double* %0)
%372 = sitofp i32 %371 to double
%373 = fadd double %372, 1.000000e+00
%374 = load double, double* %1
%375 = fcmp olt double %374, 2.500000e-01
br i1 %375, label %380, label %376
376: ; preds = %360
%377 = load double, double* %0
%378 = fdiv double %374, 2.590000e+00
%379 = fcmp olt double %377, %378
br i1 %379, label %390, label %382
380: ; preds = %360
%381 = fcmp ogt double %370, -1.339400e-01
br i1 %381, label %390, label %382
382: ; preds = %380, %376
%383 = tail call double @exp(double %370)
%384 = fmul double %373, %383
%385 = fsub double 5.000000e-01, %368
%386 = fadd double %385, 5.000000e-01
%387 = fmul double %386, %384
store double %387, double* %2
%388 = fsub double 5.000000e-01, %387
%389 = fadd double %388, 5.000000e-01
store double %389, double* %3
br label %732
390: ; preds = %380, %376
%391 = call i32 (double*, ...) bitcast (i32 (...)* @cdflib_rexp to i32 (double*, ...)*)(double* %8)
%392 = sitofp i32 %391 to double
store double %392, double* %6
%393 = fadd double %392, 5.000000e-01
%394 = fadd double %393, 5.000000e-01
%395 = fneg double %392
%396 = call double @llvm.fmuladd.f64(double %394, double %368, double %395)
%397 = fneg double %372
%398 = call double @llvm.fmuladd.f64(double %396, double %373, double %397)
store double %398, double* %3
%399 = fcmp olt double %398, 0.000000e+00
br i1 %399, label %709, label %400
400: ; preds = %390
%401 = fsub double 5.000000e-01, %398
%402 = fadd double %401, 5.000000e-01
store double %402, double* %2
br label %732
403: ; preds = %89
%404 = fneg double %94
%405 = tail call double @exp(double %404)
br label %416
406: ; preds = %89
%407 = tail call double @sqrt(double %94)
store double %407, double* %7
%408 = call i32 (i32*, double*, ...) bitcast (i32 (...)* @cdflib_error_fc to i32 (i32*, double*, ...)*)(i32* @cdflib_gamma_inc.K2, double* %7)
%409 = sitofp i32 %408 to double
%410 = load double, double* %1
%411 = fneg double %410
%412 = call double @exp(double %411)
%413 = load double, double* %7
%414 = fmul double %413, 0x3FFC5BF891B4EF7D
%415 = fdiv double %412, %414
br label %416
416: ; preds = %403, %406
%417 = phi double [ -5.000000e-01, %406 ], [ 0.000000e+00, %403 ]
%418 = phi double [ %409, %406 ], [ %405, %403 ]
%419 = phi double [ %415, %406 ], [ %405, %403 ]
%420 = phi i32 [ 0, %406 ], [ 1, %403 ]
%421 = icmp eq i32 %90, %420
br i1 %421, label %456, label %422
422: ; preds = %416
%423 = load double, double* %1
%424 = sub nsw i32 %90, %420
%425 = add nuw nsw i32 %420, 1
%426 = and i32 %424, 1
%427 = icmp eq i32 %426, 0
br i1 %427, label %434, label %428
428: ; preds = %422
%429 = add nuw nsw i32 %420, 1
%430 = fadd double %417, 1.000000e+00
%431 = fmul double %419, %423
%432 = fdiv double %431, %430
%433 = fadd double %418, %432
br label %434
434: ; preds = %428, %422
%435 = phi double [ undef, %422 ], [ %433, %428 ]
%436 = phi i32 [ %420, %422 ], [ %429, %428 ]
%437 = phi double [ %419, %422 ], [ %432, %428 ]
%438 = phi double [ %418, %422 ], [ %433, %428 ]
%439 = phi double [ %417, %422 ], [ %430, %428 ]
%440 = icmp eq i32 %90, %425
br i1 %440, label %456, label %441
441: ; preds = %434, %441
%442 = phi i32 [ %450, %441 ], [ %436, %434 ]
%443 = phi double [ %453, %441 ], [ %437, %434 ]
%444 = phi double [ %454, %441 ], [ %438, %434 ]
%445 = phi double [ %451, %441 ], [ %439, %434 ]
%446 = fadd double %445, 1.000000e+00
%447 = fmul double %443, %423
%448 = fdiv double %447, %446
%449 = fadd double %444, %448
%450 = add nuw nsw i32 %442, 2
%451 = fadd double %446, 1.000000e+00
%452 = fmul double %448, %423
%453 = fdiv double %452, %451
%454 = fadd double %449, %453
%455 = icmp eq i32 %450, %90
br i1 %455, label %456, label %441
456: ; preds = %434, %441, %416
%457 = phi double [ %418, %416 ], [ %435, %434 ], [ %454, %441 ]
store double %457, double* %3
%458 = fsub double 5.000000e-01, %457
%459 = fadd double %458, 5.000000e-01
store double %459, double* %2
br label %732
460: ; preds = %149, %67
%461 = phi double [ %139, %149 ], [ %71, %67 ]
%462 = fmul double %21, 5.000000e+00
%463 = call i32 (double, double, ...) bitcast (i32 (...)* @cdflib_fifdmax1 to i32 (double, double, ...)*)(double %462, double %46)
%464 = sitofp i32 %463 to double
%465 = load double, double* %1
%466 = load double, double* %0
%467 = fsub double 1.000000e+00, %466
%468 = fadd double %465, %467
br label %469
469: ; preds = %469, %460
%470 = phi double [ 1.000000e+00, %460 ], [ %479, %469 ]
%471 = phi double [ %465, %460 ], [ %478, %469 ]
%472 = phi double [ %468, %460 ], [ %482, %469 ]
%473 = phi double [ 1.000000e+00, %460 ], [ %476, %469 ]
%474 = phi double [ 1.000000e+00, %460 ], [ %481, %469 ]
%475 = fmul double %470, %473
%476 = call double @llvm.fmuladd.f64(double %465, double %474, double %475)
%477 = fmul double %470, %471
%478 = call double @llvm.fmuladd.f64(double %465, double %472, double %477)
%479 = fadd double %470, 1.000000e+00
%480 = fsub double %479, %466
%481 = call double @llvm.fmuladd.f64(double %480, double %474, double %476)
%482 = call double @llvm.fmuladd.f64(double %480, double %472, double %478)
%483 = insertelement <2 x double> poison, double %481, i64 0
%484 = insertelement <2 x double> %483, double %476, i64 1
%485 = insertelement <2 x double> poison, double %482, i64 0
%486 = insertelement <2 x double> %485, double %478, i64 1
%487 = fdiv <2 x double> %484, %486
%488 = extractelement <2 x double> %487, i64 0
%489 = shufflevector <2 x double> %487, <2 x double> poison, <2 x i32> <i32 1, i32 undef>
%490 = fsub <2 x double> %487, %489
%491 = extractelement <2 x double> %490, i64 0
%492 = call double @llvm.fabs.f64(double %491)
%493 = fmul double %488, %464
%494 = fcmp ult double %492, %493
br i1 %494, label %495, label %469
495: ; preds = %469
%496 = extractelement <2 x double> %487, i64 0
%497 = fmul double %461, %496
store double %497, double* %3
%498 = fsub double 5.000000e-01, %497
%499 = fadd double %498, 5.000000e-01
store double %499, double* %2
br label %732
500: ; preds = %123
%501 = fmul double %21, 2.000000e+00
%502 = fcmp ugt double %120, %501
br i1 %502, label %508, label %503
503: ; preds = %500
%504 = load double, double* %0
%505 = fmul double %504, %21
%506 = fmul double %505, %21
%507 = fcmp ogt double %506, 3.280000e-03
br i1 %507, label %731, label %508
508: ; preds = %503, %500
%509 = fneg double %118
%510 = call double @exp(double %509)
%511 = call double @sqrt(double %118)
store double %511, double* %10
%512 = call i32 (i32*, double*, ...) bitcast (i32 (...)* @cdflib_error_fc to i32 (i32*, double*, ...)*)(i32* @cdflib_gamma_inc.K1, double* %10)
%513 = sitofp i32 %512 to double
%514 = fmul double %513, 5.000000e-01
%515 = load double, double* %0
%516 = fdiv double 1.000000e+00, %515
%517 = load double, double* %8
%518 = fadd double %517, %517
%519 = call double @sqrt(double %518)
%520 = load double, double* %6
%521 = fcmp olt double %520, 1.000000e+00
br i1 %521, label %522, label %524
522: ; preds = %508
%523 = fneg double %519
store double %523, double* %8
br label %524
524: ; preds = %522, %508
%525 = phi double [ %523, %522 ], [ %519, %508 ]
%526 = icmp ult i32 %40, 2
br i1 %526, label %529, label %527
527: ; preds = %524
%528 = icmp eq i32 %40, 2
br i1 %528, label %594, label %608
529: ; preds = %524
%530 = fcmp ugt double %120, 1.000000e-03
br i1 %530, label %531, label %660
531: ; preds = %529
%532 = call double @llvm.fmuladd.f64(double %525, double 0xBE32D2197C7A2FA6, double 0x3E46097D55C37C17)
%533 = call double @llvm.fmuladd.f64(double %532, double %525, double 0x3E3CCF5CEB7F0DA1)
%534 = call double @llvm.fmuladd.f64(double %533, double %525, double 0xBE87B5F9A2D04664)
%535 = call double @llvm.fmuladd.f64(double %534, double %525, double 0x3EABD6D21E4B410C)
%536 = call double @llvm.fmuladd.f64(double %535, double %525, double 0xBEBF1B22F594C6B5)
%537 = call double @llvm.fmuladd.f64(double %536, double %525, double 0xBEC255370652AFBC)
%538 = call double @llvm.fmuladd.f64(double %537, double %525, double 0x3F048C5892F7CD86)
%539 = call double @llvm.fmuladd.f64(double %538, double %525, double 0xBF276E06FEC72742)
%540 = call double @llvm.fmuladd.f64(double %539, double %525, double 0x3F371DE3A556C72C)
%541 = call double @llvm.fmuladd.f64(double %540, double %525, double 0x3F52F684BDA12F74)
%542 = call double @llvm.fmuladd.f64(double %541, double %525, double 0xBF8E573AC901E56B)
%543 = call double @llvm.fmuladd.f64(double %542, double %525, double 0x3FB5555555555553)
%544 = call double @llvm.fmuladd.f64(double %543, double %525, double 0xBFD555555555554F)
%545 = call double @llvm.fmuladd.f64(double %525, double 0x3E49AA7A30DE112F, double 0xBE6EE23D0CBA8AE7)
%546 = call double @llvm.fmuladd.f64(double %545, double %525, double 0x3E8280F2CDE3F844)
%547 = call double @llvm.fmuladd.f64(double %546, double %525, double 0x3E33F59230A83577)
%548 = call double @llvm.fmuladd.f64(double %547, double %525, double 0xBEBB0BDFCC629CA4)
%549 = call double @llvm.fmuladd.f64(double %548, double %525, double 0x3EE00A9CABD6B83E)
%550 = call double @llvm.fmuladd.f64(double %549, double %525, double 0xBEF2FA4AE89E5AF7)
%551 = call double @llvm.fmuladd.f64(double %550, double %525, double 0xBE9AF83440E53DBE)
%552 = call double @llvm.fmuladd.f64(double %551, double %525, double 0x3F2AF83440E53DBD)
%553 = call double @llvm.fmuladd.f64(double %552, double %525, double 0xBF50394F6F09E725)
%554 = call double @llvm.fmuladd.f64(double %553, double %525, double 0x3F65AC056B015ACB)
%555 = call double @llvm.fmuladd.f64(double %554, double %525, double 0xBF6C71C71C71C717)
%556 = call double @llvm.fmuladd.f64(double %555, double %525, double 0xBF5E573AC901E56B)
%557 = call double @llvm.fmuladd.f64(double %525, double 0x3E832AC81C15D3C7, double 0xBEA522CB05171916)
%558 = call double @llvm.fmuladd.f64(double %557, double %525, double 0x3EB7058929663927)
%559 = call double @llvm.fmuladd.f64(double %558, double %525, double 0x3E626154AE391520)
%560 = call double @llvm.fmuladd.f64(double %559, double %525, double 0xBEEAC2D05890F2B2)
%561 = call double @llvm.fmuladd.f64(double %560, double %525, double 0x3F0BBF43DAF4FE4F)
%562 = call double @llvm.fmuladd.f64(double %561, double %525, double 0xBF1C253EFAA1A950)
%563 = call double @llvm.fmuladd.f64(double %562, double %525, double 0x3EC0DB20A88F468B)
%564 = call double @llvm.fmuladd.f64(double %563, double %525, double 0x3F4948B0FCD6E9E1)
%565 = call double @llvm.fmuladd.f64(double %564, double %525, double 0xBF65F7268EDAB4CE)
%566 = call double @llvm.fmuladd.f64(double %565, double %525, double 0x3F70EE643B990EE2)
%567 = call double @llvm.fmuladd.f64(double %525, double 0x3EB7E02015393116, double 0xBED7CD6F27B3F024)
%568 = call double @llvm.fmuladd.f64(double %567, double %525, double 0x3EE73DF462204EF3)
%569 = call double @llvm.fmuladd.f64(double %568, double %525, double 0xBE90152A1871F280)
%570 = call double @llvm.fmuladd.f64(double %569, double %525, double 0xBF13D2A3A29B5D9F)
%571 = call double @llvm.fmuladd.f64(double %570, double %525, double 0x3F318B9B5BF2D987)
%572 = call double @llvm.fmuladd.f64(double %571, double %525, double 0xBF3EBFB188B7CA06)
%573 = call double @llvm.fmuladd.f64(double %572, double %525, double 0x3F2E13CE465FA853)
%574 = call double @llvm.fmuladd.f64(double %573, double %525, double 0x3F4547D93B34E2B8)
%575 = call double @llvm.fmuladd.f64(double %525, double 0x3EE7DB4C02846E76, double 0xBF04CE3FD902BCA6)
%576 = call double @llvm.fmuladd.f64(double %575, double %525, double 0x3F116908B48CE057)
%577 = call double @llvm.fmuladd.f64(double %576, double %525, double 0xBEB88F2AE1DEF9C7)
%578 = call double @llvm.fmuladd.f64(double %577, double %525, double 0xBF33999A85A42377)
%579 = call double @llvm.fmuladd.f64(double %578, double %525, double 0x3F49B0FF6874F2C8)
%580 = call double @llvm.fmuladd.f64(double %579, double %525, double 0xBF4C3E0B02DA7BFC)
%581 = call double @llvm.fmuladd.f64(double %525, double 0x3F11D1E9CB24760C, double 0xBF2A2042C5148E16)
%582 = call double @llvm.fmuladd.f64(double %581, double %525, double 0x3F322BE87360EF1C)
%583 = call double @llvm.fmuladd.f64(double %582, double %525, double 0xBF1247604839C03A)
%584 = call double @llvm.fmuladd.f64(double %583, double %525, double 0xBF36128AC5A4FA6F)
%585 = call double @llvm.fmuladd.f64(double %525, double 0x3F31C0950D3ECB94, double 0xBF436773BDB97B49)
%586 = call double @llvm.fmuladd.f64(double %585, double %525, double 0x3F4168EF1B0931C6)
%587 = call double @llvm.fmuladd.f64(double %516, double 0x3F3691879C01EFBA, double %586)
%588 = call double @llvm.fmuladd.f64(double %587, double %516, double %584)
%589 = call double @llvm.fmuladd.f64(double %588, double %516, double %580)
%590 = call double @llvm.fmuladd.f64(double %589, double %516, double %574)
%591 = call double @llvm.fmuladd.f64(double %590, double %516, double %566)
%592 = call double @llvm.fmuladd.f64(double %591, double %516, double %556)
%593 = call double @llvm.fmuladd.f64(double %592, double %516, double %544)
br label %612
594: ; preds = %527
%595 = call double @llvm.fmuladd.f64(double %525, double 0x3F048C5892F7CD86, double 0xBF276E06FEC72742)
%596 = call double @llvm.fmuladd.f64(double %595, double %525, double 0x3F371DE3A556C72C)
%597 = call double @llvm.fmuladd.f64(double %596, double %525, double 0x3F52F684BDA12F74)
%598 = call double @llvm.fmuladd.f64(double %597, double %525, double 0xBF8E573AC901E56B)
%599 = call double @llvm.fmuladd.f64(double %598, double %525, double 0x3FB5555555555553)
%600 = call double @llvm.fmuladd.f64(double %599, double %525, double 0xBFD555555555554F)
%601 = call double @llvm.fmuladd.f64(double %525, double 0x3F2AF83440E53DBD, double 0xBF50394F6F09E725)
%602 = call double @llvm.fmuladd.f64(double %601, double %525, double 0x3F65AC056B015ACB)
%603 = call double @llvm.fmuladd.f64(double %602, double %525, double 0xBF6C71C71C71C717)
%604 = call double @llvm.fmuladd.f64(double %603, double %525, double 0xBF5E573AC901E56B)
%605 = call double @llvm.fmuladd.f64(double %525, double 0xBF65F7268EDAB4CE, double 0x3F70EE643B990EE2)
%606 = call double @llvm.fmuladd.f64(double %605, double %516, double %604)
%607 = call double @llvm.fmuladd.f64(double %606, double %516, double %600)
br label %612
608: ; preds = %527
%609 = call double @llvm.fmuladd.f64(double %525, double 0x3F52F684BDA12F74, double 0xBF8E573AC901E56B)
%610 = call double @llvm.fmuladd.f64(double %609, double %525, double 0x3FB5555555555553)
%611 = call double @llvm.fmuladd.f64(double %610, double %525, double 0xBFD555555555554F)
br label %612
612: ; preds = %706, %700, %660, %608, %594, %531
%613 = phi double [ %661, %660 ], [ %651, %700 ], [ %651, %706 ], [ %520, %531 ], [ %520, %594 ], [ %520, %608 ]
%614 = phi double [ %663, %660 ], [ %637, %700 ], [ %637, %706 ], [ %510, %531 ], [ %510, %594 ], [ %510, %608 ]
%615 = phi double [ %699, %660 ], [ %705, %700 ], [ %707, %706 ], [ %593, %531 ], [ %607, %594 ], [ %611, %608 ]
%616 = phi double [ %665, %660 ], [ %645, %700 ], [ %645, %706 ], [ %514, %531 ], [ %514, %594 ], [ %514, %608 ]
%617 = fcmp olt double %613, 1.000000e+00
%618 = fmul double %615, 0x3FD9884533D43656
%619 = fdiv double %618, %119
br i1 %617, label %625, label %620
620: ; preds = %612
%621 = fadd double %616, %619
%622 = fmul double %614, %621
store double %622, double* %3
%623 = fsub double 5.000000e-01, %622
%624 = fadd double %623, 5.000000e-01
store double %624, double* %2
br label %732
625: ; preds = %612
%626 = fsub double %616, %619
%627 = fmul double %614, %626
store double %627, double* %2
%628 = fsub double 5.000000e-01, %627
%629 = fadd double %628, 5.000000e-01
store double %629, double* %3
br label %732
630: ; preds = %117
%631 = load double, double* %0
%632 = fmul double %631, %21
%633 = fmul double %632, %21
%634 = fcmp ogt double %633, 3.280000e-03
br i1 %634, label %731, label %635
635: ; preds = %630
%636 = fsub double 5.000000e-01, %118
%637 = fadd double %636, 5.000000e-01
%638 = call double @sqrt(double %118)
%639 = fdiv double %118, 3.000000e+00
%640 = fsub double 5.000000e-01, %639
%641 = fadd double %640, 5.000000e-01
%642 = fmul double %641, %638
%643 = fdiv double %642, 0x3FFC5BF891B4EF7D
%644 = fsub double 5.000000e-01, %643
%645 = fdiv double %644, %637
%646 = load double, double* %0
%647 = fdiv double 1.000000e+00, %646
%648 = load double, double* %8
%649 = fadd double %648, %648
%650 = call double @sqrt(double %649)
%651 = load double, double* %6
%652 = fcmp olt double %651, 1.000000e+00
br i1 %652, label %653, label %655
653: ; preds = %635
%654 = fneg double %650
store double %654, double* %8
br label %655
655: ; preds = %653, %635
%656 = phi double [ %654, %653 ], [ %650, %635 ]
%657 = icmp ult i32 %40, 2
br i1 %657, label %660, label %658
658: ; preds = %655
%659 = icmp eq i32 %40, 2
br i1 %659, label %700, label %706
660: ; preds = %655, %529
%661 = phi double [ %651, %655 ], [ %520, %529 ]
%662 = phi double [ %656, %655 ], [ %525, %529 ]
%663 = phi double [ %637, %655 ], [ %510, %529 ]
%664 = phi double [ %647, %655 ], [ %516, %529 ]
%665 = phi double [ %645, %655 ], [ %514, %529 ]
%666 = call double @llvm.fmuladd.f64(double %662, double 0xBEC255370652AFBC, double 0x3F048C5892F7CD86)
%667 = call double @llvm.fmuladd.f64(double %666, double %662, double 0xBF276E06FEC72742)
%668 = call double @llvm.fmuladd.f64(double %667, double %662, double 0x3F371DE3A556C72C)
%669 = call double @llvm.fmuladd.f64(double %668, double %662, double 0x3F52F684BDA12F74)
%670 = call double @llvm.fmuladd.f64(double %669, double %662, double 0xBF8E573AC901E56B)
%671 = call double @llvm.fmuladd.f64(double %670, double %662, double 0x3FB5555555555553)
%672 = call double @llvm.fmuladd.f64(double %671, double %662, double 0xBFD555555555554F)
%673 = call double @llvm.fmuladd.f64(double %662, double 0xBEF2FA4AE89E5AF7, double 0xBE9AF83440E53DBE)
%674 = call double @llvm.fmuladd.f64(double %673, double %662, double 0x3F2AF83440E53DBD)
%675 = call double @llvm.fmuladd.f64(double %674, double %662, double 0xBF50394F6F09E725)
%676 = call double @llvm.fmuladd.f64(double %675, double %662, double 0x3F65AC056B015ACB)
%677 = call double @llvm.fmuladd.f64(double %676, double %662, double 0xBF6C71C71C71C717)
%678 = call double @llvm.fmuladd.f64(double %677, double %662, double 0xBF5E573AC901E56B)
%679 = call double @llvm.fmuladd.f64(double %662, double 0x3F0BBF43DAF4FE4F, double 0xBF1C253EFAA1A950)
%680 = call double @llvm.fmuladd.f64(double %679, double %662, double 0x3EC0DB20A88F468B)
%681 = call double @llvm.fmuladd.f64(double %680, double %662, double 0x3F4948B0FCD6E9E1)
%682 = call double @llvm.fmuladd.f64(double %681, double %662, double 0xBF65F7268EDAB4CE)
%683 = call double @llvm.fmuladd.f64(double %682, double %662, double 0x3F70EE643B990EE2)
%684 = call double @llvm.fmuladd.f64(double %662, double 0xBF13D2A3A29B5D9F, double 0x3F318B9B5BF2D987)
%685 = call double @llvm.fmuladd.f64(double %684, double %662, double 0xBF3EBFB188B7CA06)
%686 = call double @llvm.fmuladd.f64(double %685, double %662, double 0x3F2E13CE465FA853)
%687 = call double @llvm.fmuladd.f64(double %686, double %662, double 0x3F4547D93B34E2B8)
%688 = call double @llvm.fmuladd.f64(double %662, double 0xBF33999A85A42377, double 0x3F49B0FF6874F2C8)
%689 = call double @llvm.fmuladd.f64(double %688, double %662, double 0xBF4C3E0B02DA7BFC)
%690 = call double @llvm.fmuladd.f64(double %662, double 0x3F322BE87360EF1C, double 0xBF1247604839C03A)
%691 = call double @llvm.fmuladd.f64(double %690, double %662, double 0xBF36128AC5A4FA6F)
%692 = call double @llvm.fmuladd.f64(double %662, double 0xBF436773BDB97B49, double 0x3F4168EF1B0931C6)
%693 = call double @llvm.fmuladd.f64(double %664, double 0x3F3691879C01EFBA, double %692)
%694 = call double @llvm.fmuladd.f64(double %693, double %664, double %691)
%695 = call double @llvm.fmuladd.f64(double %694, double %664, double %689)
%696 = call double @llvm.fmuladd.f64(double %695, double %664, double %687)
%697 = call double @llvm.fmuladd.f64(double %696, double %664, double %683)
%698 = call double @llvm.fmuladd.f64(double %697, double %664, double %678)
%699 = call double @llvm.fmuladd.f64(double %698, double %664, double %672)
br label %612
700: ; preds = %658
%701 = call double @llvm.fmuladd.f64(double %656, double 0xBF8E573AC901E56B, double 0x3FB5555555555553)
%702 = call double @llvm.fmuladd.f64(double %701, double %656, double 0xBFD555555555554F)
%703 = call double @llvm.fmuladd.f64(double %656, double 0xBF6C71C71C71C717, double 0xBF5E573AC901E56B)
%704 = call double @llvm.fmuladd.f64(double %647, double 0x3F70EE643B990EE2, double %703)
%705 = call double @llvm.fmuladd.f64(double %704, double %647, double %702)
br label %612
706: ; preds = %658
%707 = call double @llvm.fmuladd.f64(double %656, double 0x3FB5555555555553, double 0xBFD555555555554F)
br label %612
708: ; preds = %727, %106
store double 0.000000e+00, double* %2
store double 1.000000e+00, double* %3
br label %732
709: ; preds = %727, %390, %58
store double 1.000000e+00, double* %2
store double 0.000000e+00, double* %3
br label %732
710: ; preds = %53
%711 = fcmp ult double %55, 2.500000e-01
%712 = tail call double @sqrt(double %55)
br i1 %711, label %713, label %718
713: ; preds = %710
store double %712, double* %11
%714 = call i32 (double*, ...) bitcast (i32 (...)* @cdflib_error_f to i32 (double*, ...)*)(double* %11)
%715 = sitofp i32 %714 to double
store double %715, double* %2
%716 = fsub double 5.000000e-01, %715
%717 = fadd double %716, 5.000000e-01
store double %717, double* %3
br label %732
718: ; preds = %710
store double %712, double* %12
%719 = call i32 (i32*, double*, ...) bitcast (i32 (...)* @cdflib_error_fc to i32 (i32*, double*, ...)*)(i32* @cdflib_gamma_inc.K2, double* %12)
%720 = sitofp i32 %719 to double
store double %720, double* %3
%721 = fsub double 5.000000e-01, %720
%722 = fadd double %721, 5.000000e-01
store double %722, double* %2
br label %732
723: ; preds = %109
%724 = call double @llvm.fabs.f64(double %111)
%725 = fmul double %21, 2.000000e+00
%726 = fcmp ugt double %724, %725
br i1 %726, label %727, label %731
727: ; preds = %141, %723, %31
%728 = phi double [ %142, %141 ], [ %114, %723 ], [ %22, %31 ]
%729 = load double, double* %1
%730 = fcmp ugt double %729, %728
br i1 %730, label %709, label %708
731: ; preds = %27, %723, %630, %503, %5, %24
store double 2.000000e+00, double* %2
br label %732
732: ; preds = %731, %718, %713, %709, %708, %625, %620, %495, %456, %400, %382, %334, %245
ret void
}