Lines Matching refs:pg
33 special_case (svfloat64_t x, svbool_t pg, svfloat64_t t, svbool_t special) in special_case() argument
36 svfloat64_t half_over_t = svdivr_x (pg, t, 0.5); in special_case()
37 svfloat64_t y = svadd_x (pg, half_t, half_over_t); in special_case()
44 exp_inline (svfloat64_t x, const svbool_t pg, const struct data *d) in exp_inline() argument
47 svfloat64_t z = svmla_x (pg, sv_f64 (d->shift), x, d->inv_ln2); in exp_inline()
48 svfloat64_t n = svsub_x (pg, z, d->shift); in exp_inline()
50 svfloat64_t r = svmla_x (pg, x, n, d->ln2_hi); in exp_inline()
51 r = svmla_x (pg, r, n, d->ln2_lo); in exp_inline()
54 svuint64_t e = svlsl_x (pg, u, 52 - V_EXP_TAIL_TABLE_BITS); in exp_inline()
57 svfloat64_t y = svmla_x (pg, sv_f64 (d->poly[1]), r, d->poly[2]); in exp_inline()
58 y = svmla_x (pg, sv_f64 (d->poly[0]), r, y); in exp_inline()
59 y = svmla_x (pg, sv_f64 (1.0), r, y); in exp_inline()
63 u = svld1_gather_index (pg, __v_exp_tail_data, i); in exp_inline()
64 svfloat64_t s = svreinterpret_f64 (svadd_x (pg, u, e)); in exp_inline()
66 return svmla_x (pg, s, s, y); in exp_inline()
79 svfloat64_t SV_NAME_D1 (cosh) (svfloat64_t x, const svbool_t pg) in SV_NAME_D1()
83 svfloat64_t ax = svabs_x (pg, x); in SV_NAME_D1()
84 svbool_t special = svcmpgt (pg, svreinterpret_u64 (ax), d->special_bound); in SV_NAME_D1()
88 svfloat64_t t = exp_inline (ax, pg, d); in SV_NAME_D1()
91 if (unlikely (svptest_any (pg, special))) in SV_NAME_D1()
92 return special_case (x, pg, t, special); in SV_NAME_D1()
95 svfloat64_t half_over_t = svdivr_x (pg, t, 0.5); in SV_NAME_D1()
96 return svadd_x (pg, half_t, half_over_t); in SV_NAME_D1()