Lines Matching defs:dx

419 //   dx: the reduced argument for log2(x)
423 double powf_double_double(int idx_x, double dx, double y6, double lo6_hi,
428 // idx2 = round(2^14 * (dx + 2^-8)) = round ( dx * 2^14 + 2^6)
429 // dx2 = (1 + dx) * r2 - 1
433 fputil::nearest_integer(fputil::multiply_add(dx, 0x1.0p14, 0x1.0p6)));
434 double dx2 = fputil::multiply_add(1.0 + dx, R2[idx2], -1.0); // Exact
710 // dx = r * m_x - 1.
711 // The computation is exact, and -2^-8 <= dx < 2^-7.
712 // Then m_x = (1 + dx) / r, and
713 // log2(m_x) = log2( (1 + dx) / r )
714 // = log2(1 + dx) - log2(r).
715 double dx;
717 dx = static_cast<double>(fputil::multiply_add(m_x, R[idx_x], -1.0f)); // Exact
719 dx = fputil::multiply_add(static_cast<double>(m_x), RD[idx_x], -1.0); // Exact
723 // dx * P(dx) ~ log2(1 + dx)
732 double dx2 = dx * dx; // Exact
733 double c0 = fputil::multiply_add(dx, COEFFS[1], COEFFS[0]);
734 double c1 = fputil::multiply_add(dx, COEFFS[3], COEFFS[2]);
735 double c2 = fputil::multiply_add(dx, COEFFS[5], COEFFS[4]);
749 // double dx2 = dx * dx;
750 // double c0 = fputil::multiply_add(dx, COEFFS[1], COEFFS[0]);
751 // double c1 = fputil::multiply_add(dx, COEFFS[3], COEFFS[2]);
755 // s = e_x - log2(r) + dx * P(dx)
757 // |log2(x) - s| < ulp(e_x) + (bounds on dx) * (error bounds of P(dx))
761 double s = fputil::multiply_add(dx, p, LOG2_R[idx_x] + e_x);
789 // | (y*log2(x) - hm * 2^-6 - lo) / y| < err(dx * p) + err(LOG2_R_DD.lo)
792 y6, fputil::multiply_add(dx, p, LOG2_R_TD[idx_x].mid), lo6_hi);
861 double r_dd = powf_double_double(idx_x, dx, y6, lo6_hi, exp2_hi_mid_dd);