xref: /freebsd/contrib/arm-optimized-routines/pl/math/poly_sve_f32.h (revision cb14a3fe5122c879eae1fb480ed7ce82a699ddb6)
1 /*
2  * Helpers for evaluating polynomials on single-precision SVE input, using
3  * various schemes.
4  *
5  * Copyright (c) 2023, Arm Limited.
6  * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception
7  */
8 
9 #ifndef PL_MATH_POLY_SVE_F32_H
10 #define PL_MATH_POLY_SVE_F32_H
11 
12 #include <arm_sve.h>
13 
14 /* Wrap SVE f32 helpers: evaluation of some scheme/order has form:
15    sv_[scheme]_[order]_f32_x.  */
16 #define VTYPE svfloat32_t
17 #define STYPE float
18 #define VWRAP(f) sv_##f##_f32_x
19 #define DUP svdup_f32
20 #include "poly_sve_generic.h"
21 #undef DUP
22 #undef VWRAP
23 #undef STYPE
24 #undef VTYPE
25 
26 #endif
27