Home
last modified time | relevance | path

Searched refs:svfloat32_t (Results 1 – 25 of 50) sorted by relevance

12

/src/contrib/arm-optimized-routines/math/include/ !
H A Dmathlib.h190 svfloat32_t _ZGVsMxv_acosf (svfloat32_t, svbool_t);
191 svfloat32_t _ZGVsMxv_acoshf (svfloat32_t, svbool_t);
192 svfloat32_t _ZGVsMxv_asinf (svfloat32_t, svbool_t);
193 svfloat32_t _ZGVsMxv_asinhf (svfloat32_t, svbool_t);
194 svfloat32_t _ZGVsMxv_atanf (svfloat32_t, svbool_t);
195 svfloat32_t _ZGVsMxv_atanhf (svfloat32_t, svbool_t);
196 svfloat32_t _ZGVsMxv_cbrtf (svfloat32_t, svbool_t);
197 svfloat32_t _ZGVsMxv_cosf (svfloat32_t, svbool_t);
198 svfloat32_t _ZGVsMxv_coshf (svfloat32_t, svbool_t);
199 svfloat32_t _ZGVsMxv_cospif (svfloat32_t, svbool_t);
[all …]
/src/contrib/arm-optimized-routines/math/aarch64/experimental/sve/ !
H A Derfinvf_5u.c43 static inline svfloat32_t
44 special (svbool_t pg, svfloat32_t x, const struct data *d) in special()
46 svfloat32_t ax = svabs_x (pg, x); in special()
47 svfloat32_t t = svdivr_x ( in special()
54 svfloat32_t ts in special()
56 svfloat32_t q in special()
61 static inline svfloat32_t
62 notails (svbool_t pg, svfloat32_t x, const struct data *d) in notails()
66 svfloat32_t t = svmad_x (pg, x, x, -0.5625); in notails()
67 svfloat32_t q = svadd_x (pg, t, d->Q10_2); in notails()
[all …]
/src/contrib/arm-optimized-routines/math/aarch64/sve/ !
H A Dsv_sincospif_common.h37 sv_sincospif_inline (svbool_t pg, svfloat32_t x, in sv_sincospif_inline()
43 svfloat32_t rx = svrinta_x (pg, x); in sv_sincospif_inline()
44 svfloat32_t sr = svsub_x (pt, x, rx); in sv_sincospif_inline()
47 svfloat32_t cr = svsubr_x (pt, svabs_x (pg, sr), 0.5f); in sv_sincospif_inline()
50 svfloat32_t sr2 = svmul_x (pt, sr, sr); in sv_sincospif_inline()
51 svfloat32_t sr4 = svmul_x (pt, sr2, sr2); in sv_sincospif_inline()
52 svfloat32_t cr2 = svmul_x (pt, cr, cr); in sv_sincospif_inline()
53 svfloat32_t cr4 = svmul_x (pt, cr2, cr2); in sv_sincospif_inline()
62 svfloat32_t c135 = svld1rq_f32 (svptrue_b32 (), &d->c1); in sv_sincospif_inline()
64 svfloat32_t sp01 = svmla_lane (sv_f32 (d->c0), sr2, c135, 0); in sv_sincospif_inline()
[all …]
H A Dexp10f.c42 static inline svfloat32_t
43 sv_exp10f_inline (svfloat32_t x, const svbool_t pg, const struct data *d) in sv_exp10f_inline()
49 svfloat32_t lane_consts = svld1rq (svptrue_b32 (), &d->log2_10_lo); in sv_exp10f_inline()
52 svfloat32_t shift = sv_f32 (d->shift); in sv_exp10f_inline()
53 svfloat32_t z = svmad_x (pg, sv_f32 (d->log10_2), x, shift); in sv_exp10f_inline()
54 svfloat32_t n = svsub_x (svptrue_b32 (), z, shift); in sv_exp10f_inline()
57 svfloat32_t r = svmsb_x (pg, sv_f32 (d->log2_10_hi), n, x); in sv_exp10f_inline()
60 svfloat32_t scale = svexpa (svreinterpret_u32 (z)); in sv_exp10f_inline()
63 svfloat32_t p12 = svmla_lane (sv_f32 (d->c1), r, lane_consts, 2); in sv_exp10f_inline()
64 svfloat32_t p34 = svmla_lane (sv_f32 (d->c3), r, lane_consts, 3); in sv_exp10f_inline()
[all …]
H A Dlog10f.c39 static svfloat32_t NOINLINE
40 special_case (svuint32_t u_off, svfloat32_t p, svfloat32_t r2, svfloat32_t y, in special_case()
53 svfloat32_t SV_NAME_F1 (log10) (svfloat32_t x, const svbool_t pg) in log10()
63 svfloat32_t n = svcvt_f32_x ( in log10()
67 svfloat32_t r = svsub_x (pg, svreinterpret_f32 (ix), 1.0f); in log10()
73 svfloat32_t r2 = svmul_x (svptrue_b32 (), r, r); in log10()
74 svfloat32_t r4 = svmul_x (svptrue_b32 (), r2, r2); in log10()
75 svfloat32_t p_1357 = svld1rq (svptrue_b32 (), &d->poly_1357[0]); in log10()
76 svfloat32_t q_01 = svmla_lane (sv_f32 (d->poly_0246[0]), r, p_1357, 0); in log10()
77 svfloat32_t q_23 = svmla_lane (sv_f32 (d->poly_0246[1]), r, p_1357, 1); in log10()
[all …]
H A Dtanpif.c27 svfloat32_t SV_NAME_F1 (tanpi) (svfloat32_t x, const svbool_t pg) in tanpi()
30 svfloat32_t odd_coeffs = svld1rq (pg, &d->c1); in tanpi()
31 svfloat32_t n = svrintn_x (pg, x); in tanpi()
34 svfloat32_t xr = svsub_x (pg, x, n); in tanpi()
35 svfloat32_t ar = svabd_x (pg, x, n); in tanpi()
37 svfloat32_t r = svsel (flip, svsub_x (pg, sv_f32 (0.5f), ar), ar); in tanpi()
39 svfloat32_t r2 = svmul_x (pg, r, r); in tanpi()
40 svfloat32_t r4 = svmul_x (pg, r2, r2); in tanpi()
43 svfloat32_t p01 = svmla_lane (sv_f32 (d->c0), r2, odd_coeffs, 0); in tanpi()
44 svfloat32_t p23 = svmla_lane (sv_f32 (d->c2), r2, odd_coeffs, 1); in tanpi()
[all …]
H A Dexp2f.c32 static inline svfloat32_t
33 sv_exp2f_inline (svfloat32_t x, const svbool_t pg, const struct data *d) in sv_exp2f_inline()
37 svfloat32_t z = svadd_x (svptrue_b32 (), x, d->shift); in sv_exp2f_inline()
38 svfloat32_t n = svsub_x (svptrue_b32 (), z, d->shift); in sv_exp2f_inline()
39 svfloat32_t r = svsub_x (svptrue_b32 (), x, n); in sv_exp2f_inline()
41 svfloat32_t scale = svexpa (svreinterpret_u32 (z)); in sv_exp2f_inline()
46 svfloat32_t even_coeffs = svld1rq (svptrue_b32 (), &d->c0); in sv_exp2f_inline()
47 svfloat32_t r2 = svmul_x (svptrue_b32 (), r, r); in sv_exp2f_inline()
48 svfloat32_t p12 = svmla_lane (sv_f32 (d->c1), r, even_coeffs, 1); in sv_exp2f_inline()
49 svfloat32_t p34 = svmla_lane (sv_f32 (d->c3), r, even_coeffs, 2); in sv_exp2f_inline()
[all …]
H A Derfcf.c52 svfloat32_t SV_NAME_F1 (erfc) (svfloat32_t x, const svbool_t pg) in erfc()
56 svfloat32_t a = svabs_x (pg, x); in erfc()
62 svfloat32_t shift = sv_f32 (dat->shift); in erfc()
63 svfloat32_t z = svadd_x (pg, a, shift); in erfc()
71 svfloat32_t erfcr = svld1_gather_index (pg, p, i); in erfc()
72 svfloat32_t scale = svld1_gather_index (pg, p + 1, i); in erfc()
75 svfloat32_t r = svsub_x (pg, z, shift); in erfc()
76 svfloat32_t d = svsub_x (pg, a, r); in erfc()
77 svfloat32_t d2 = svmul_x (svptrue_b32 (), d, d); in erfc()
78 svfloat32_t r2 = svmul_x (svptrue_b32 (), r, r); in erfc()
[all …]
H A Dtanf.c39 static svfloat32_t NOINLINE
40 special_case (svfloat32_t x, svfloat32_t y, svbool_t cmp) in special_case()
49 svfloat32_t SV_NAME_F1 (tan) (svfloat32_t x, const svbool_t pg) in tan()
53 svfloat32_t odd_coeffs = svld1rq (svptrue_b32 (), &d->c1); in tan()
54 svfloat32_t pi_vals = svld1rq (svptrue_b32 (), &d->pio2_1); in tan()
57 svfloat32_t n = svrintn_x (pg, svmul_lane (x, pi_vals, 3)); in tan()
64 svfloat32_t r; in tan()
77 svfloat32_t z = svneg_m (r, pred_alt, r); in tan()
81 svfloat32_t z2 = svmul_x (svptrue_b32 (), r, r); in tan()
82 svfloat32_t p01 = svmla_lane (sv_f32 (d->c0), z2, odd_coeffs, 0); in tan()
[all …]
H A Datan2f.c26 static svfloat32_t NOINLINE
27 special_case (svfloat32_t y, svfloat32_t x, svfloat32_t ret, in special_case()
47 svfloat32_t SV_NAME_F2 (atan2) (svfloat32_t y, svfloat32_t x, in atan2()
59 svfloat32_t ax = svabs_x (pg, x); in atan2()
60 svfloat32_t ay = svabs_x (pg, y); in atan2()
71 svfloat32_t n = svsel (pred_aygtax, svneg_x (pg, ax), ay); in atan2()
72 svfloat32_t d = svsel (pred_aygtax, ay, ax); in atan2()
73 svfloat32_t z = svdiv_x (pg, n, d); in atan2()
76 svfloat32_t shift = svreinterpret_f32 (svlsr_x (pg, sign_x, 1)); in atan2()
82 svfloat32_t z2 = svmul_x (pg, z, z); in atan2()
[all …]
H A Dsv_expf_inline.h36 static inline svfloat32_t
37 expf_inline (svfloat32_t x, const svbool_t pg, const struct sv_expf_data *d) in expf_inline()
42 svfloat32_t lane_consts = svld1rq (svptrue_b32 (), &d->ln2_lo); in expf_inline()
45 svfloat32_t z = svmad_x (pg, sv_f32 (d->inv_ln2), x, d->shift); in expf_inline()
46 svfloat32_t n = svsub_x (pg, z, d->shift); in expf_inline()
49 svfloat32_t r = svmsb_x (pg, sv_f32 (d->ln2_hi), n, x); in expf_inline()
53 svfloat32_t scale = svexpa (svreinterpret_u32 (z)); in expf_inline()
56 svfloat32_t p12 = svmla_lane (sv_f32 (d->c1), r, lane_consts, 2); in expf_inline()
57 svfloat32_t p34 = svmla_lane (sv_f32 (d->c3), r, lane_consts, 3); in expf_inline()
58 svfloat32_t r2 = svmul_x (svptrue_b32 (), r, r); in expf_inline()
[all …]
H A Dsv_log1pf_inline.h31 static inline svfloat32_t
32 sv_log1pf_inline (svfloat32_t x, svbool_t pg) in sv_log1pf_inline()
44 svfloat32_t m = svadd_x (pg, x, 1); in sv_log1pf_inline()
52 svfloat32_t m_scale = svreinterpret_f32 ( in sv_log1pf_inline()
57 svfloat32_t s = svreinterpret_f32 (svsubr_x (pg, k, d->four)); in sv_log1pf_inline()
58 svfloat32_t fconst = svld1rq_f32 (svptrue_b32 (), &d->ln2); in sv_log1pf_inline()
62 svfloat32_t ms2 = svmul_x (svptrue_b32 (), m_scale, m_scale); in sv_log1pf_inline()
64 svfloat32_t c1357 = svld1rq_f32 (svptrue_b32 (), &d->c1); in sv_log1pf_inline()
65 svfloat32_t p01 = svmla_lane_f32 (sv_f32 (d->c0), m_scale, c1357, 0); in sv_log1pf_inline()
66 svfloat32_t p23 = svmla_lane_f32 (sv_f32 (d->c2), m_scale, c1357, 1); in sv_log1pf_inline()
[all …]
H A Dlog2f.c36 static svfloat32_t NOINLINE
37 special_case (svuint32_t u_off, svfloat32_t p, svfloat32_t r2, svfloat32_t y, in special_case()
50 svfloat32_t SV_NAME_F1 (log2) (svfloat32_t x, const svbool_t pg) in log2()
60 svfloat32_t n = svcvt_f32_x ( in log2()
64 svfloat32_t r = svsub_x (pg, svreinterpret_f32 (u), 1.0f); in log2()
67 svfloat32_t r2 = svmul_x (svptrue_b32 (), r, r); in log2()
70 svfloat32_t p_1357 = svld1rq (svptrue_b32 (), &d->poly_1357[0]); in log2()
71 svfloat32_t q_01 = svmla_lane (sv_f32 (d->poly_02468[0]), r, p_1357, 0); in log2()
72 svfloat32_t q_23 = svmla_lane (sv_f32 (d->poly_02468[1]), r, p_1357, 1); in log2()
73 svfloat32_t q_45 = svmla_lane (sv_f32 (d->poly_02468[2]), r, p_1357, 2); in log2()
[all …]
H A Dcbrtf.c34 static svfloat32_t NOINLINE
35 special_case (svfloat32_t x, svfloat32_t y, svbool_t special) in special_case()
40 static inline svfloat32_t
52 svfloat32_t SV_NAME_F1 (cbrt) (svfloat32_t x, const svbool_t pg) in cbrt()
56 svfloat32_t ax = svabs_x (pg, x); in cbrt()
66 svfloat32_t m = svreinterpret_f32 (svorr_x ( in cbrt()
73 svfloat32_t p in cbrt()
77 svfloat32_t m_by_3 = svmul_x (pg, m, d->one_third); in cbrt()
78 svfloat32_t a = svmla_x (pg, svdiv_x (pg, m_by_3, svmul_x (pg, p, p)), p, in cbrt()
95 svfloat32_t ef = svmul_x (pg, svcvt_f32_x (pg, e), d->one_third); in cbrt()
[all …]
H A Dcosf.c29 static svfloat32_t NOINLINE
30 special_case (svfloat32_t x, svfloat32_t y, svbool_t oob) in special_case()
40 svfloat32_t SV_NAME_F1 (cos) (svfloat32_t x, const svbool_t pg) in cos()
44 svfloat32_t r = svabs_x (pg, x); in cos()
48 svfloat32_t negpio2_and_invpio2 = svld1rq (svptrue_b32 (), &d->neg_pio2_1); in cos()
51 svfloat32_t q = svmla_lane (sv_f32 (d->shift), r, negpio2_and_invpio2, 3); in cos()
52 svfloat32_t n = svsub_x (pg, q, d->shift); in cos()
60 svfloat32_t f = svtssel (r, svreinterpret_u32 (q)); in cos()
63 svfloat32_t r2 = svtsmul (r, svreinterpret_u32 (q)); in cos()
64 svfloat32_t y = sv_f32 (0.0f); in cos()
H A Dexpm1f.c31 static svfloat32_t NOINLINE
32 special_case (svfloat32_t x, svbool_t pg) in special_case()
40 svfloat32_t SV_NAME_F1 (expm1) (svfloat32_t x, svbool_t pg) in expm1()
53 svfloat32_t lane_constants = svld1rq (svptrue_b32 (), &d->c2); in expm1()
60 svfloat32_t j = svmul_x (svptrue_b32 (), x, d->inv_ln2); in expm1()
63 svfloat32_t f = svmls_lane (x, j, lane_constants, 2); in expm1()
71 svfloat32_t p12 = svmla_lane (sv_f32 (d->c1), f, lane_constants, 0); in expm1()
72 svfloat32_t p34 = svmla_lane (sv_f32 (d->c3), f, lane_constants, 1); in expm1()
73 svfloat32_t f2 = svmul_x (svptrue_b32 (), f, f); in expm1()
74 svfloat32_t p = svmla_x (pg, p12, f2, p34); in expm1()
[all …]
H A Dlogf.c37 static svfloat32_t NOINLINE
38 special_case (svuint32_t u_off, svfloat32_t p, svfloat32_t r2, svfloat32_t y, in special_case()
50 svfloat32_t SV_NAME_F1 (log) (svfloat32_t x, const svbool_t pg) in log()
60 svfloat32_t n = svcvt_f32_x ( in log()
65 svfloat32_t r = svsub_x (pg, svreinterpret_f32 (u), 1.0f); in log()
68 svfloat32_t r2 = svmul_x (svptrue_b32 (), r, r); in log()
70 svfloat32_t p_0135 = svld1rq (svptrue_b32 (), &d->poly_0135[0]); in log()
71 svfloat32_t p = svmla_lane (sv_f32 (d->poly_246[0]), r, p_0135, 1); in log()
72 svfloat32_t q = svmla_lane (sv_f32 (d->poly_246[1]), r, p_0135, 2); in log()
73 svfloat32_t y = svmla_lane (sv_f32 (d->poly_246[2]), r, p_0135, 3); in log()
H A Dacoshf.c16 static svfloat32_t NOINLINE
17 special_case (svfloat32_t xm1, svfloat32_t tmp, svbool_t special) in special_case()
19 svfloat32_t x = svadd_x (svptrue_b32 (), xm1, 1.0f); in special_case()
20 svfloat32_t y = sv_log1pf_inline (tmp, svptrue_b32 ()); in special_case()
30 svfloat32_t SV_NAME_F1 (acosh) (svfloat32_t x, const svbool_t pg) in acosh()
35 svfloat32_t xm1 = svsub_x (pg, x, 1.0f); in acosh()
36 svfloat32_t u = svmul_x (pg, xm1, svadd_x (pg, x, 1.0f)); in acosh()
37 svfloat32_t tmp = svadd_x (pg, xm1, svsqrt_x (pg, u)); in acosh()
H A Dtanhf.c28 static svfloat32_t NOINLINE
29 special_case (svfloat32_t x, svbool_t pg, svbool_t is_boring, in special_case()
30 svfloat32_t boring, svfloat32_t q, svbool_t special) in special_case()
32 svfloat32_t y in special_case()
41 svfloat32_t SV_NAME_F1 (tanh) (svfloat32_t x, const svbool_t pg) in tanh()
45 svfloat32_t ax = svabs_x (pg, x); in tanh()
48 svfloat32_t boring = svreinterpret_f32 (svorr_x (pg, sign, d->onef)); in tanh()
53 svfloat32_t q = expm1f_inline (svmul_x (svptrue_b32 (), x, 2.0), pg, in tanh()
58 svfloat32_t y = svdiv_x (pg, q, svadd_x (pg, q, 2.0)); in tanh()
H A Dsv_expm1f_inline.h31 static inline svfloat32_t
32 expm1f_inline (svfloat32_t x, svbool_t pg, const struct sv_expm1f_data *d) in expm1f_inline()
37 svfloat32_t lane_constants = svld1rq (svptrue_b32 (), &d->c2); in expm1f_inline()
44 svfloat32_t j = svmul_x (svptrue_b32 (), x, d->inv_ln2); in expm1f_inline()
47 svfloat32_t f = svmls_lane (x, j, lane_constants, 2); in expm1f_inline()
55 svfloat32_t p12 = svmla_lane (sv_f32 (d->c1), f, lane_constants, 0); in expm1f_inline()
56 svfloat32_t p34 = svmla_lane (sv_f32 (d->c3), f, lane_constants, 1); in expm1f_inline()
57 svfloat32_t f2 = svmul_x (svptrue_b32 (), f, f); in expm1f_inline()
58 svfloat32_t p = svmla_x (pg, p12, f2, p34); in expm1f_inline()
65 svfloat32_t t = svscale_x (pg, sv_f32 (1.0f), svcvt_s32_x (pg, j)); in expm1f_inline()
H A Derff.c42 svfloat32_t SV_NAME_F1 (erf) (svfloat32_t x, const svbool_t pg) in erf()
51 svfloat32_t a = svabs_x (pg, x); in erf()
53 svfloat32_t shift = sv_f32 (dat->shift); in erf()
54 svfloat32_t z = svadd_x (pg, a, shift); in erf()
59 svfloat32_t r = svsub_z (a_gt_min, z, shift); in erf()
60 svfloat32_t erfr in erf()
64 svfloat32_t scale in erf()
69 svfloat32_t d = svsub_x (pg, a, r); in erf()
70 svfloat32_t d2 = svmul_x (pg, d, d); in erf()
71 svfloat32_t y = svmla_x (pg, r, d, dat->third); in erf()
H A Dcoshf.c23 static svfloat32_t NOINLINE
24 special_case (svfloat32_t x, svfloat32_t half_e, svfloat32_t half_over_e, in special_case()
35 svfloat32_t SV_NAME_F1 (cosh) (svfloat32_t x, svbool_t pg) in cosh()
46 svfloat32_t e = expf_inline (x, pg, &d->expf_consts); in cosh()
47 svfloat32_t half_e = svmul_x (svptrue_b32 (), e, 0.5); in cosh()
48 svfloat32_t half_over_e = svdivr_x (pg, e, 0.5); in cosh()
H A Dacosf.c44 svfloat32_t SV_NAME_F1 (acos) (svfloat32_t x, const svbool_t pg) in acos()
49 svfloat32_t ax = svabs_x (pg, x); in acos()
55 svfloat32_t z2 = svsel (a_gt_half, svmls_x (pg, sv_f32 (0.5), ax, 0.5), in acos()
57 svfloat32_t z = svsqrt_m (ax, a_gt_half, z2); in acos()
60 svfloat32_t p = sv_horner_4_f32_x (pg, z2, d->poly); in acos()
67 svfloat32_t y in acos()
71 svfloat32_t off = svdup_f32_z (is_neg, d->pi); in acos()
72 svfloat32_t mul = svsel (a_gt_half, sv_f32 (2.0), sv_f32 (-1.0)); in acos()
73 svfloat32_t add = svsel (a_gt_half, off, sv_f32 (d->pi_over_2)); in acos()
H A Dsinf.c35 static svfloat32_t NOINLINE
36 special_case (svfloat32_t x, svfloat32_t y, svbool_t cmp) in special_case()
46 svfloat32_t SV_NAME_F1 (sin) (svfloat32_t x, const svbool_t pg) in sin()
50 svfloat32_t ax = svabs_x (pg, x); in sin()
57 svfloat32_t pi_vals = svld1rq (svptrue_b32 (), &d->negpi1); in sin()
60 svfloat32_t n = svmla_lane (sv_f32 (d->shift), ax, pi_vals, 3); in sin()
65 svfloat32_t r; in sin()
72 svfloat32_t r2 = svmul_x (pg, r, r); in sin()
73 svfloat32_t y; in sin()
/src/contrib/arm-optimized-routines/math/test/ !
H A Dmathbench_wrappers.h156 static svfloat32_t
157 _Z_sv_atan2f_wrap (svfloat32_t x, svbool_t pg) in _Z_sv_atan2f_wrap()
168 static svfloat32_t
169 _Z_sv_hypotf_wrap (svfloat32_t x, svbool_t pg) in _Z_sv_hypotf_wrap()
180 static svfloat32_t
181 xy_Z_sv_powf (svfloat32_t x, svbool_t pg) in xy_Z_sv_powf()
186 static svfloat32_t
187 x_Z_sv_powf (svfloat32_t x, svbool_t pg) in x_Z_sv_powf()
192 static svfloat32_t
193 y_Z_sv_powf (svfloat32_t x, svbool_t pg) in y_Z_sv_powf()
[all …]

12