xref: /aosp_15_r20/external/musl/src/math/exp2f_data.h (revision c9945492fdd68bbe62686c5b452b4dc1be3f8453)
1*c9945492SAndroid Build Coastguard Worker /*
2*c9945492SAndroid Build Coastguard Worker  * Copyright (c) 2017-2018, Arm Limited.
3*c9945492SAndroid Build Coastguard Worker  * SPDX-License-Identifier: MIT
4*c9945492SAndroid Build Coastguard Worker  */
5*c9945492SAndroid Build Coastguard Worker #ifndef _EXP2F_DATA_H
6*c9945492SAndroid Build Coastguard Worker #define _EXP2F_DATA_H
7*c9945492SAndroid Build Coastguard Worker 
8*c9945492SAndroid Build Coastguard Worker #include <features.h>
9*c9945492SAndroid Build Coastguard Worker #include <stdint.h>
10*c9945492SAndroid Build Coastguard Worker 
11*c9945492SAndroid Build Coastguard Worker /* Shared between expf, exp2f and powf.  */
12*c9945492SAndroid Build Coastguard Worker #define EXP2F_TABLE_BITS 5
13*c9945492SAndroid Build Coastguard Worker #define EXP2F_POLY_ORDER 3
14*c9945492SAndroid Build Coastguard Worker extern hidden const struct exp2f_data {
15*c9945492SAndroid Build Coastguard Worker 	uint64_t tab[1 << EXP2F_TABLE_BITS];
16*c9945492SAndroid Build Coastguard Worker 	double shift_scaled;
17*c9945492SAndroid Build Coastguard Worker 	double poly[EXP2F_POLY_ORDER];
18*c9945492SAndroid Build Coastguard Worker 	double shift;
19*c9945492SAndroid Build Coastguard Worker 	double invln2_scaled;
20*c9945492SAndroid Build Coastguard Worker 	double poly_scaled[EXP2F_POLY_ORDER];
21*c9945492SAndroid Build Coastguard Worker } __exp2f_data;
22*c9945492SAndroid Build Coastguard Worker 
23*c9945492SAndroid Build Coastguard Worker #endif
24