Lines Matching refs:pg
45 shifted_lookup (const svbool_t pg, const float64_t *table, svint64_t i)
47 return svld1_gather_index (pg, table, svadd_x (pg, i, 2));
57 svfloat64_t SV_NAME_D1 (cbrt) (svfloat64_t x, const svbool_t pg)
61 svfloat64_t ax = svabs_x (pg, x);
63 svuint64_t sign = sveor_x (pg, svreinterpret_u64 (x), iax);
66 svbool_t special = svcmpge (pg, svsub_x (pg, iax, d->tiny_bound), d->thresh);
72 pg, svand_x (pg, svreinterpret_u64 (x), MantissaMask), HalfExp));
74 = svsub_x (pg, svreinterpret_s64 (svlsr_x (pg, iax, 52)), d->exp_bias);
79 = sv_pairwise_poly_3_f64_x (pg, m, svmul_x (pg, m, m), d->poly);
82 svfloat64_t m_by_3 = svmul_x (pg, m, d->one_third);
83 svfloat64_t a = svmla_x (pg, svdiv_x (pg, m_by_3, svmul_x (pg, p, p)), p,
85 a = svmla_x (pg, svdiv_x (pg, m_by_3, svmul_x (pg, a, a)), a, d->two_thirds);
101 svfloat64_t eb3f = svmul_x (pg, svcvt_f64_x (pg, e), d->one_third);
102 svint64_t ey = svcvt_s64_x (pg, eb3f);
103 svint64_t em3 = svmls_x (pg, e, ey, 3);
105 svfloat64_t my = shifted_lookup (pg, d->table, em3);
106 my = svmul_x (pg, my, a);
109 svfloat64_t y = svscale_x (pg, my, ey);
111 if (unlikely (svptest_any (pg, special)))
113 x, svreinterpret_f64 (svorr_x (pg, svreinterpret_u64 (y), sign)),
117 return svreinterpret_f64 (svorr_x (pg, svreinterpret_u64 (y), sign));