xref: /freebsd/contrib/arm-optimized-routines/pl/math/poly_scalar_f32.h (revision 5a02ffc32e777041dd2dad4e651ed2a0865a0a5d)
1*5a02ffc3SAndrew Turner /*
2*5a02ffc3SAndrew Turner  * Helpers for evaluating polynomials on siongle-precision scalar input, using
3*5a02ffc3SAndrew Turner  * various schemes.
4*5a02ffc3SAndrew Turner  *
5*5a02ffc3SAndrew Turner  * Copyright (c) 2023, Arm Limited.
6*5a02ffc3SAndrew Turner  * SPDX-License-Identifier: MIT OR Apache-2.0 WITH LLVM-exception
7*5a02ffc3SAndrew Turner  */
8*5a02ffc3SAndrew Turner 
9*5a02ffc3SAndrew Turner #ifndef PL_MATH_POLY_SCALAR_F32_H
10*5a02ffc3SAndrew Turner #define PL_MATH_POLY_SCALAR_F32_H
11*5a02ffc3SAndrew Turner 
12*5a02ffc3SAndrew Turner #include <math.h>
13*5a02ffc3SAndrew Turner 
14*5a02ffc3SAndrew Turner /* Wrap scalar f32 helpers: evaluation of some scheme/order has form:
15*5a02ffc3SAndrew Turner    [scheme]_[order]_f32.  */
16*5a02ffc3SAndrew Turner #define VTYPE float
17*5a02ffc3SAndrew Turner #define FMA fmaf
18*5a02ffc3SAndrew Turner #define VWRAP(f) f##_f32
19*5a02ffc3SAndrew Turner #include "poly_generic.h"
20*5a02ffc3SAndrew Turner #undef VWRAP
21*5a02ffc3SAndrew Turner #undef FMA
22*5a02ffc3SAndrew Turner #undef VTYPE
23*5a02ffc3SAndrew Turner 
24*5a02ffc3SAndrew Turner #endif
25